Django CSRF 在使用 Dynamic Formset 和 Django Formtools

我正在使用Django formttools来创建一个多步骤向导。在其中一个表单中,我有一个问题选项,用户需要根据需要添加尽可能多的问题。我已经通过Django Dynamic Formset实现了动态表单集,但是尽管我的模板中有{%csrf_token%},但我仍然遇到CSRF问题。这是我的模板:


 {% block content %}

  <p>Step {{ wizard.steps.step1 }} of {{ wizard.steps.count }}</p>

  <form action="" method="post" enctype="multipart/form-data" id="job-question">{% csrf_token %}

    <table>

    {{ wizard.management_form }}

{% if wizard.form.forms %}

    {{ wizard.form.management_form }}

    {% for form in wizard.form.forms %}

        {{ form }}

    {% endfor %}

{% else %}

    {{ wizard.form }}

{% endif %}

</table>

{% if wizard.steps.prev %}

<button name="wizard_goto_step" type="submit" value="{{ wizard.steps.first }}">{% trans "first step" %}</button>

<button name="wizard_goto_step" type="submit" value="{{ wizard.steps.prev }}">{% trans "prev step" %}</button>

{% endif %}

<input type="submit" value="{% trans "submit" %}"/>



</form>


<script type="text/javascript" src="{% static 'js/jquery-min.3.4.1..js' %}"></script>

<script type="text/javascript" src="{% static 'js/jquery.formset.js' %}"></script>

<script type="text/javascript">

    $(function() {

        $('#job-question').formset();

    })

</script>

{% endblock %}


青春有我
浏览 92回答 1
1回答

牛魔王的故事

我设法通过将每个表单及其id传递给动态表单集JS函数来处理这个问题。通过这种方式,验证是完全完成的。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python