【发布时间】:2017-05-03 20:55:19
【问题描述】:
我正在尝试创建一个签到页面,其中列出了所有已注册的人。每个人都有一个输入框,用于提交他们在活动中的小时数。我想要它,以便为每个人多次提交相同的表格;我不想为每个人都有一个提交按钮,因为会有几个人,这会很乏味。我正在使用 for 循环 {% for signups in signup %} 来遍历已注册人员的查询集。
在后端,我希望它将小时数保存到查询集中具有匹配名称的行中。
HTML:
<form action="/events/occ_checkin" class="form" method="POST" id="checkin_{{ signups.id }}" name="checkin_{{ signups.id }}">{% csrf_token %}
{% for form in formset %}
<h5>
<label for="{{ form.fullname.id_for_label }}">***how would I get the attendee's name?***</label>
<input id="{{ form.fullname.id_for_label }}" name="{{ form.fullname.html_name }}" type="hidden" value="***attendee's name here as well***">
<input id="{{ form.hours.id_for_label }}" name="{{ form.hours.html_name }}" step="0.01" type="number" class="form-control" value="{{ events.hours }}">
</h5>
{% endfor %}
<button class="btn btn-primary btn-block" type="submit">Submit</button>
</form>
【问题讨论】:
-
docs.djangoproject.com/en/1.10/topics/forms/formsets 特别想看看。模型表单集。
-
好的。我尝试过使用表单集,但无法找到一种方法来显示活动参与者的姓名。我正在使用 for 循环遍历与会者
{% for signups in signup %}{{ signups.fullname }}*form stuff*{% endfor %}。但是因为我使用的是{% for form in formset %},所以我想不出一种方法来获取每个与会者的姓名,而不让他们重复几次。我已经编辑了我的问题以获得我当前的 html 代码。 -
在模型表单中,如果我没记错的话,您可以通过“实例”属性访问关联的模型。这不是我的想法,但 django 文档肯定可以证实。
-
我正在尝试为 html 中 for 循环的特定迭代获取变量
{{ signups.fullname }},我该怎么做? HTML 在我的问题中。 -
我想出了一个办法:
{% for signups in signup %}{% if forloop.parentloop.counter == forloop.counter %}{{ signups.fullname }}{% endif %}{% endfor %}
标签: python django forms django-forms django-queryset