在我的models.py中,我有一个辅助函数,该函数将一些html传递到列表中。然后,我在views.py中使用该列表。我得到的CSRF验证失败,错误。
下的models.py中的相关代码f = """<form action="/solutions/" method="post">
<input type="submit"> </form>"""
我已经尝试了许多纠正错误的方法,包括下面的代码
f = """<form action="/solutions/" method="post">
{j}
<input type="submit"> </form>""".format(j=django.middleware.csrf.get_token(request))
但是,当我这样做时,我得到的“函数”对象没有属性“ META”错误。在我的模板中,我使用{%csrf_token%},但是在我的辅助函数中使用此方法并没有成功。
我尝试做类似下面的代码。但也没有使它起作用
f = """<form action="/solutions/" method="post">
{% csrf_token %}
<input type="submit"> </form>"""
答案 0 :(得分:0)
您需要将其添加为隐藏输入<input name="csrfToken" value="token_value" type="hidden">
docs很好地解释了如何获取令牌值。