【问题标题】:Problems to display the Form in the Template using CreateView使用 CreateView 在模板中显示表单的问题
【发布时间】:2022-01-15 09:10:39
【问题描述】:

发生的情况是我正在使用 CreateView 并且我发现当我输入 {{form}} 时代码可以正常工作,它会显示所有字段并保存在数据库中(一切都很好)但是当我将值一一分解时,例如:{{form.plates}}{{form.type}},它不会向数据库发送任何内容,并且保持在同一页面上。这是为什么?我只是需要它分解

clientes-add.html

<form enctype="multipart/form-data" method="post">
        {% csrf_token %}
         <div class="row mb-3">
             <div class="col-md-3">
                <div class="mb-3">
                     <label>Customer type</label>
                <br>
                 <div class="form-check form-check-inline">
                      {{ form.tipo }}
                   </div>

                 </div>
              </div>
            </div>
           <div class="row mb-3 only-corp hide-item">
                <div class="col-md-12">
                    <div class="mb-3">
                          <label>Corporation name</label>
                              {{ form.corporacion }}
                     </div>
                 </div>
            </div>
<button class="btn btn-primary mb-3" type="submit" value="Post">Save</button>
</form>



【问题讨论】:

    标签: python html django


    【解决方案1】:

    您还需要为每个{{form.fieldname}} 渲染{{form.fieldname.errors}}。错误会告诉您为什么表单无效,但您看不到它们!

    如果有额外的html,你可以测试一下,只有在有错误的时候才生成。

    {% if form.fieldname.errors %} <br> {{form.fieldname.errors }} {% endif %}
    

    别忘了{{form.non_field_errors }}

    【讨论】:

    • 嗨,我只是按照你的建议,但奇怪的是,当我点击保存按钮时什么都没有出现,唯一奇怪的是它在渲染 {{form}} 时继续工作,而不是单独的 {{form. Tipo}},{{form.corporacion }},我只尝试放置一个字段,即使有一个字段也无法保存
    猜你喜欢
    • 1970-01-01
    • 2016-11-30
    • 2019-06-27
    • 1970-01-01
    • 2011-09-04
    • 2017-04-19
    • 2012-06-21
    • 2021-09-06
    • 1970-01-01
    相关资源
    最近更新 更多