Python 在Formset_Factory=Django中的表单之间添加内容
我正在开发django应用程序,更具体地说,是一组表单。我将表单集amount设置为查询集检索的对象数。我要做的是对表单集进行更改,以便在表单集中的每个表单之间包含与表单集相关的用户的名称。现在发生的事情是打印整个表单集,然后将我要移动的名称放在表单集中每个表单之间 **更新** 现在发生的事情是,在每个被迭代的不同表单之间,它显示所有被显示的对象。我的问题是,我只希望列表中的第一个对象在第一个窗体之前打印,第二个对象在第二个窗体之前显示。等等 正在发生的事情的示例:Python 在Formset_Factory=Django中的表单之间添加内容,python,django,django-forms,Python,Django,Django Forms,我正在开发django应用程序,更具体地说,是一组表单。我将表单集amount设置为查询集检索的对象数。我要做的是对表单集进行更改,以便在表单集中的每个表单之间包含与表单集相关的用户的名称。现在发生的事情是打印整个表单集,然后将我要移动的名称放在表单集中每个表单之间 **更新** 现在发生的事情是,在每个被迭代的不同表单之间,它显示所有被显示的对象。我的问题是,我只希望列表中的第一个对象在第一个窗体之前打印,第二个对象在第二个窗体之前显示。等等 正在发生的事情的示例: Add expense -
Add expense - restructured group
Please complete the form below
josh
lifter
omar
Amount: 0
Description: expense
josh
lifter
omar
Amount: 0
Description: expense
josh
lifter
omar
Amount: 0
Description: expense
submit
我希望它只显示第一个表单的名字,以此类推。代码如下:
{% extends "base.html" %}
{% block content %}
<h2>Add expense - {{ currentGroup.name }}</h2>
{% if message %}
<p>{{message}}</p>
{% endif %}
<form action="." method="POST">
{% csrf_token %}
{{ form.management_form }}
{% for f in form %}
{% for expense in expenses %}
<p>{{ expense.user.username }}</p>
{% endfor %}
{{ f.as_p }}
{% endfor %}
<input type="submit" name="submit" value="submit">
</form>
{% endblock %}
您可以在模板中迭代表单变量,并可以在表单之间添加信息,但请确保您也必须在如下代码所示的表单中添加{{form.management_form}}
<form action="." method="POST">
{% csrf_token %}
{{ form.management_form }}
{% for f in form %}
{# Add whatever information you want to show between forms #}
{{ f.as_p }}
{% endfor %}
{% for expense in expenses %}
<p>{{ expense.user.username }}</p>
{% endfor %}
<input type="submit" name="submit" value="submit">
</form>
谢谢,成功了。但现在我有另一个问题。我把它搞砸了,但现在它在每个不同字段之间遍历整个对象列表。请检查更新问题@Neerajkumari如果你看一下原始帖子的更新部分,我实现了你的方法。我有三个表单和三个用户。它当前正在创建的每个表单之间遍历列表中的所有对象。所以所有的用户都是表单,所有的用户都是表单,等等。我想找到一种方法,让用户然后表单,用户然后表单,等等,而不是所有的用户然后表单。我更新了原来的帖子@neerajkumardoes可以帮助您了解模板中迭代用户的变量?哦,用户是存储在费用表中的对象。因此,它位于费用范围内。用户名来自expense中的expense表单,显示用户名来自expense.user.username@尼拉库马尔