views.py
from django.core.context_processors import csrf
context.update(csrf(request))
{'csrf_token': <django.utils.functional.__proxy__ object at 0xae0f4ec>}
我正在尝试将csrf标记添加到我的forms.im中,在上面的视图中生成csrf标记。但是csrf_token值会给出一些代理对象,就像上面显示的那样,而不是string.I m using django 1.3。提前感谢任何帮助。
答案 0 :(得分:6)
csrf方法很懒,它返回一个Promise / Proxy。在模板中调用此对象后,模板引擎将对此对象进行unicode,从而触发实际方法。
试试这个:
print unicode(csrf(request)['csrf_token'])