can';t获得引导';s input select下拉框使用django for循环

can';t获得引导';s input select下拉框使用django for循环,django,twitter-bootstrap,Django,Twitter Bootstrap,嗨,当我使用输入选择时,我无法让我的django与引导正确工作。 此时会出现标签和框,但其中没有任何内容。在盒子下面,我看到了我所有的设备ID。我不能把它们放进盒子里。我错过了什么 <div class="form-group"> <label for="equipment_id" control-label">{{ form.equipment_id.label }}</label> {% for equip in form.equipme

嗨,当我使用输入选择时,我无法让我的django与引导正确工作。 此时会出现标签和框,但其中没有任何内容。在盒子下面,我看到了我所有的设备ID。我不能把它们放进盒子里。我错过了什么

<div class="form-group">
    <label for="equipment_id" control-label">{{ form.equipment_id.label }}</label> 
    {% for equip in form.equipment_id %}
        <select id="equipment_id" name="equipment_id" class="form-control">
            <option>{{ equip }}</option>
        </select>
    {% endfor %}
    <p>{{ form.equipment_id.errors.as_text }}</p>
</div>

假设此div正确包含在表单标记中:

  • 您应该使用form.equipment,设备id只有id号

  • 您试图迭代创建选项,但选择标记位于for循环内,因此您为每个设备对象创建一个选择,而不是为每个设备对象创建一个选项

  • 如果没有剩下的代码,就不清楚是否还有其他问题

  • 我假设您要做的是让表单显示引导属性。一个更简洁的解决方案是使用django引导表单包(
    pip安装django引导表单
    ),将其包含在模板中,并使用
    {%load bootstrap%}
    ,如下所示:

    <form id="form" class="form" method="post">
        {% csrf_token %}
        {{ form|bootstrap }}
        <div class="form-actions">
            <button id="create_submit" class="btn btn-default" type="submit">Save</button>
        </div>
    </form>
    
    
    {%csrf_令牌%}
    {{form | bootstrap}}
    拯救
    
    更新

    您仍在错误地迭代选项。正确答案应该是:

    {% for value,text in form.technician.choices %}
        <option value="{{ value }}">{{ text }}</option>
    {% endfor %}
    
    {%表示值,文本格式为form.technology.choices%}
    {{text}}
    {%endfor%}
    

    如果technician是外键字段(每个模型实例仅允许一个),则在实际发布表单时可能会遇到问题。但这是另一个问题:)

    这太棒了!我切换到bootstrapform应用程序,但我仍然无法让多个select为
    技术人员工作。我将发布上面的更新代码和我所做的更改。如果我回答了您的原始问题,请接受答案,而不是更改问题。我很乐意在评论部分帮助解决其他问题。这并没有帮助我解决多重选择问题,这是我最初的问题,但它确实给我介绍了一些新的
    bootstrapform
    。我检查过了,谢谢。这是一个外键字段。erIn在文档中写道:将“bootstrapform”添加到已安装的应用程序中。
    <form id="form" class="form" method="post">
        {% csrf_token %}
        {{ form|bootstrap }}
        <div class="form-actions">
            <button id="create_submit" class="btn btn-default" type="submit">Save</button>
        </div>
    </form>
    
    {% for value,text in form.technician.choices %}
        <option value="{{ value }}">{{ text }}</option>
    {% endfor %}