1
A
回答
7
您可以编写自定义的中间件:
from project.settings import IS_COOKIE_SET # Set Global value for cookie
response = render_to_response("your-template.html")
if !IS_COOKIE_SET:
response.set_cookie('key', 'value')
return response
else:
return response
您可以在任何这样的其他数据视图中查看cookie的值实现你的目标,因为你有很多意见,当然你不能更新每个视图。自定义的中间件将是这样的:
class MyCookieProcessingMiddleware(object):
# your desired cookie will be available in every django view
def process_request(self, request):
# will only add cookie if request does not have it already
if not request.COOKIES.get('your_desired_cookie'):
request.COOKIES['set_your_desired_cookie'] = 'value_for_desired_cookie'
# your desired cookie will be available in every HttpResponse parser like browser but not in django view
def process_response(self, request, response):
if not request.COOKIES.get('your_desired_cookie'):
response.set_cookie('set_your_desired_cookie', 'value_for_desired_cookie')
return response
在你settings.py
文件,只需将路径添加到您的自定义中间件是这样的:
MIDDLEWARE_CLASSES = (
'django.contrib.sessions.middleware.SessionMiddleware',
'MyProject.myapp.mymodule.MyCookieProcessingMiddleware', # path to custom class
)
中间件的顺序很重要,SessionMiddleware后你属于。
1
我的理解是,你想设置一次cookie,然后在任何视图中检查它的值。如果这是你的问题,那么您可以在视图一次保存的Cookie是这样的:
request.COOKIES.get('key', None) # Return None If cookie not exists
相关问题
- 1. 在许多视图上设置Onclick Android
- 2. 如何为HttpUrlConnection设置Cookie
- 3. 将图像设置为许多UIImageViews
- 4. javascript cookie,设置多个cookie
- 5. 如何为多个图像视图设置位图
- 6. 在Django视图中设置cookie
- 7. 如何设置cookie?
- 8. 如何在java中设置多个cookie?
- 9. 如何使用CherryPy设置多个Cookie
- 10. 如何在nodejs中设置多个cookie?
- 11. 如何在BaseHttpServer中设置多个Cookie?
- 12. 如何在DropWizard视图上设置cookie并仍然返回View?
- 13. 如何在电子网页视图中设置cookie?
- 14. 如何为所有视图设置BarBackgroundColor?
- 15. 如何为Collection视图设置Searchbar
- 16. 如何为rhomobile/rhodes webview设置cookie
- 17. 如何为重定向设置php cookie
- 18. 如何将div的id设置为cookie?
- 19. 如何将Cookie设置为WebView?
- 20. 如何为另一个域设置Cookie
- 21. 如何为Http Get Request设置Cookie?
- 22. 如何为webSocket javascript设置cookie标头?
- 23. 如何为肥皂请求设置Cookie?
- 24. 如何将变量设置为Cookie(javascript)
- 25. 如何在PHP中为域设置Cookie
- 26. Cookie未保存。在视图中设置cookie
- 27. android如何将多个BaseAdapter设置为一个视图
- 28. 如何在gridView中为多个视图设置背景?
- 29. ZF视图导航助手:如何为一个视图设置多个菜单?
- 30. 如何将多个视图的一个DataContext设置为视图模型