jQuery-如何在Django / Wagtail中检索cookie以设置Python变量
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了jQuery-如何在Django / Wagtail中检索cookie以设置Python变量,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2091字,纯文字阅读大概需要3分钟。
内容图文
我正在建立一个网站,该网站将根据用户来自哪个省份而具有一些不同的内容.我设置了一个使用jQuery / Bootstrap的模式窗口,当用户未设置Cookie时,该窗口会在用户登陆网站时弹出:
base.html
<script type="text/javascript">
$(document).ready(function() {
if (Cookies.get('province') == null) {
$('#provinceModal').modal('show');
}
$('button#ontario').click(function() {
Cookies.set('province', 'ontario');
$('#provinceModal').modal('hide');
});
$('button#alberta').click(function() {
Cookies.set('province', 'alberta');
$('#provinceModal').modal('hide');
});
$('button#quebec').click(function() {
Cookies.set('province', 'quebec');
$('#provinceModal').modal('hide');
});
});
</script>
cookie的设置正确,因为单击其中一个按钮后,我可以在浏览器中看到它们.我遇到的问题是使用Python检索cookie.我想保存省份变量,然后使用if语句显示某些内容(取决于省份等于什么).
我已经尝试过了,并且能够将cookie打印到控制台:
cookies.py
import Cookie
import os
import requests
def get_cookies():
s = requests.session()
r = s.get("http://www.twitter.com")
cookie = r.cookies['_twitter_sess']
return cookie
如何将此值传递给Python中要在模板中使用的变量?我不确定下一步该怎么做.我想念什么?
解决方法:
您使用的是Python Cookie模块,而不是HttpRequest对象设置的django,为detailed in this answer.(现在已过期,请继续阅读!)
在您正在处理该JQuery弹出窗口的后端的视图中(大概是您将其发送到Django中的端点,并且该代码是视图中的摘录),您想使用
request.session文档来检查和设置cookie的状态.
例如,在Django视图中,它看起来像这样:
def a_standard_view(request):
print request.session
您可以通过使用(再次,这是我最初链接的部分中)来检查cookie设置是否运行良好:
从django.http导入HttpResponse
从django.shortcuts导入渲染
def faux_login(request):
if request.method == 'POST':
if request.session.test_cookie_worked():
request.session.delete_test_cookie()
return HttpResponse("You're logged in.")
else:
return HttpResponse("Please enable cookies and try again.")
request.session.set_test_cookie()
return render(request, 'foo/login_form.html')
在您的特定实例中,您将需要一个处理jquery的终结点(例如/ ajax / province /或类似的终结点).您的Jquery需要使用get call to hit that endpoint以及您要存储在会话数据中的任何详细信息.
内容总结
以上是互联网集市为您收集整理的jQuery-如何在Django / Wagtail中检索cookie以设置Python变量全部内容,希望文章能够帮你解决jQuery-如何在Django / Wagtail中检索cookie以设置Python变量所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。