如何将 csrf_token 添加到手动创建的 HTML 表单?
How to add csrf_token to manually created HTML form?
当使用 Django format_html 创建 HTML 表单时,我需要在下面 {% csrf_token %}
的位置插入 csrf_token
,因为使用 {% csrf_token %}
使用 format_html
时当然不要替换:
res = format_html('''
<form method="POST">
{% csrf_token %}
{}
</form>''', ...
如何手动生成在 Django 渲染 HTML 模板时插入的 {% csrf_token %}
的等价物?
根据其他SOpost找到解决方案,方法是添加一个隐藏字段csrf_token
,如:
res = format_html('''
<form method="POST">
<input type="hidden" name="csrfmiddlewaretoken" value="{}" />
{}
</form>''', csrf(html_request)['csrf_token'], ...)
当使用 Django format_html 创建 HTML 表单时,我需要在下面 {% csrf_token %}
的位置插入 csrf_token
,因为使用 {% csrf_token %}
使用 format_html
时当然不要替换:
res = format_html('''
<form method="POST">
{% csrf_token %}
{}
</form>''', ...
如何手动生成在 Django 渲染 HTML 模板时插入的 {% csrf_token %}
的等价物?
根据其他SOpost找到解决方案,方法是添加一个隐藏字段csrf_token
,如:
res = format_html('''
<form method="POST">
<input type="hidden" name="csrfmiddlewaretoken" value="{}" />
{}
</form>''', csrf(html_request)['csrf_token'], ...)