首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从表单集中手动放置表单?

如何从表单集中手动放置表单?
EN

Stack Overflow用户
提问于 2019-06-07 16:32:42
回答 1查看 24关注 0票数 0

我有一个模板页面,假设在数据库查询返回FALSE的情况下从表单集中加载表单。

代码语言:javascript
复制
    <form method="post" class="form">
        {% csrf_token %}

        {% for form in formset %}
        {% if comparelist.item2 %}
            <div class="col-3">{{comparelist.item2.name}}</div>
            <div class="col-3">{{comparelist.item2.price}}</div>
            <div class="col-3">{{comparelist.item2.store}}</div>            
        {% else %}
        <div>
            {{form.form-0}}
        </div>
        {% endif %}

        {% if comparelist.item3 %}
        <div class="row">
            <div class="col-3">{{comparelist.item3.name}}</div>
            <div class="col-3">{{comparelist.item3.price}}</div>
            <div class="col-3">{{comparelist.item3.store}}</div>
        </div>
        {% else %}
        <div>
            {{form.form-1}}
        </div>
        {% endif %}

        {% if comparelist.item4 %}
        <div class="row">
            <div class="col-3">{{comparelist.item4.name}}</div>
            <div class="col-3">{{comparelist.item4.price}}</div>
            <div class="col-3">{{comparelist.item4.store}}</div>
        </div>
        {% else %}
        <div>
            {{form.form-2}}
        </div>
        {%endfor%}

    <button type="submit" class="btn btn-primary">Submit</button>
    </form>

但很明显,{{form.form-x}}不起作用。那么如何手动插入这些表单呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-08 16:52:28

我仍然不能完全确定{{form.form-2}}语法应该做什么。但我认为你想要的只是通过它们的位置直接引用表单,就像你对comparelist项所做的那样。因此,删除for循环并执行此操作:

代码语言:javascript
复制
<form method="post" class="form">
    {% csrf_token %}
    {{ formset.management_form }}

    {% if comparelist.item2 %}
        <div class="col-3">{{comparelist.item2.name}}</div>
        <div class="col-3">{{comparelist.item2.price}}</div>
        <div class="col-3">{{comparelist.item2.store}}</div>            
    {% else %}
    <div>
        {{formset.forms.0}}
    </div>
    {% endif %}

    {% if comparelist.item3 %}
    <div class="row">
        <div class="col-3">{{comparelist.item3.name}}</div>
        <div class="col-3">{{comparelist.item3.price}}</div>
        <div class="col-3">{{comparelist.item3.store}}</div>
    </div>
    {% else %}
    <div>
        {{formset.forms.1}}
    </div>
    {% endif %}

    {% if comparelist.item4 %}
    <div class="row">
        <div class="col-3">{{comparelist.item4.name}}</div>
        <div class="col-3">{{comparelist.item4.price}}</div>
        <div class="col-3">{{comparelist.item4.store}}</div>
    </div>
    {% else %}
    <div>
        {{formset.forms.2}}
    </div>
    {% endfor %}

<button type="submit" class="btn btn-primary">Submit</button>
</form>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56490748

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档