【问题标题】:Problem in displaying django formset errors显示 django formset 错误的问题
【发布时间】:2019-02-06 02:31:16
【问题描述】:

我正在使用 formset 来获取多个用户输入,如果需要,用户可以在其中设置 Delete 表单复选框。但是应该至少有 1 个表单,如表单集的 min_num 参数中提供的那样。但是,当用户检查要删除的所有表单时,formset is_valid() 方法会失败,但不会显示任何错误。它只在打印 formset.errors 属性时显示 [{}, {}]。 (django v. 1.11.3)

if formset.is_valid():
    ...
else:
    print(formset.errors) # this prints [{}, {}]
    return self.render_to_response(context_data)

【问题讨论】:

    标签: django django-forms


    【解决方案1】:

    有多种形式,所以你不能直接打印错误。尝试像这样在模板中显示错误:

    {% if formset.errors %}
    {% for field in formset %}
        {% for error in field.errors %}
            <div class="alert alert-danger">
                <strong>{{ error|escape }}</strong>
            </div>
        {% endfor %}
     {% endfor %}
     {% for error in formset.non_field_errors %}
        <div class="alert alert-danger">
            <strong>{{ error|escape }}</strong>
        </div>
      {% endfor %}
    {% endif %}
    

    【讨论】:

      猜你喜欢
      • 2020-07-07
      • 1970-01-01
      • 2017-06-13
      • 2011-05-05
      • 1970-01-01
      • 1970-01-01
      • 2011-05-29
      • 2020-02-29
      • 2017-07-19
      相关资源
      最近更新 更多