django - 如何在 Django 视图中存储全局变量
问题描述
在Django 视图中,是否可以在视图中创建全局/会话变量并分配一些值(例如,通过 Ajax 调用发送)并在另一个视图中使用它?
我试图实现的场景将类似于:
查看view1获取一些通过 Ajax 调用发送的可变数据:
def view1(request):
my_global_value = request.GET.get("data1", '') # Storing data globally
然后,存储的变量在另一个视图view2中使用:
def view2(request):
my_int_value = my_global_value # Using the global variable
解决方案
来自 Django 的一些示例:
def post_comment(request, new_comment):
if request.session.get('has_commented', False):
return HttpResponse("You've already commented.")
c = comments.Comment(comment=new_comment)
c.save()
request.session['has_commented'] = True
return HttpResponse('Thanks for your comment!')
编辑 MIDDLEWARE 设置并确保它包含
'django.contrib.sessions.middleware.SessionMiddleware'
您request.session.get("key")
也可以在任何其他视图中访问。
推荐阅读
- mysql - 有条件问题的 SQL 来获取数据
- python - Python - 如果用户试图中途停止执行,有没有办法让函数优雅地清理?
- c# - 在用户键入类似于来自 wpf 的 PreviewKeyDown 时修改条目的 Text 属性
- android - Zebra RFID getBeeperVolume 抛出 RFID_API_SUCCESS
- vue.js - 在 vue2-editor 中使用 quill-image-resize-module 不会实现 ImageResize
- java - jasper 报告中未显示数据,但显示元数据
- mysql - 如何从多个 id 的字符串中按 id 选择行
- python - 我的 pygame rects 给出的 rect 参数无效错误
- django - 如何在 Djnago 中从多对多关系表中获取数据?
- terraform - Terraform - 合并顶级资源参数