Django中的上下文处理器通常允许所有模板访问变量。如何在views.py(后端)代码中访问此变量?
以下是我的尝试:
def index(request):
request_context = RequestContext(request)
center = request_context.get("center")
但我得到了#34;没有"对于中心变量。
在上下文处理器代码中:
def center(request):
return {'center': '123'}
我添加了上下文处理器"中心"功能到设置中的上下文处理器列表。
答案 0 :(得分:0)
使用decorators
代替context_processors
。这对你来说真的很简单。
在views.py
之前使用@csrf_exempt
之前要从中获取变量的函数,并在模板中要使用该变量的行的末尾使用{% csrf_token %}
。
Official documentation on csrf decorators
如果您需要查看示例,请查看this。这里的template / add_comment.html和views.py正在使用装饰器。
注意 : - 您需要在使用之前导入views.py中的csrf_exempt,如下所示: -
from django.views.decorators.csrf import csrf_exempt