一些让我困惑的事情。有一个简单的模型(员工),带有一个 FK 到用户 Django 模型。在我的模板中,我使用自定义字段输出来自定义表单中的字段外观:
<select ...>
{% for employee in form.accept_employee.field.choices %}
<option value="{{ employee.0 }}">{{ employee.1 }}</option>
{% endfor %}
</select>
这用于创建另一个带有 FK to Employee 的 Ticket 模型,用户应该从列表中选择一个。但是使用 django-debug-toolbar 我看到 2 个相同的 sql 请求“从员工中选择 *”用于该模板,而不是当我使用类似这样的东西时只有一个
{{ form.accept_employee }}
在模板中。谁能解释为什么会这样?
PS查看代码:
class TicketCreate(SetHeadlineMixin, CreateView):
headline = u'...'
template_name = u'service/ticket_create_form.html'
model = Ticket
def form_valid(self, form):
self.object = form.save()
message = u'<a href="{0}" target="_blank"><strong>...</strong></a>'.format(reverse('ticket_print', args=[self.object.id]))
messages.add_message(self.request, messages.INFO, message)
return HttpResponseRedirect(reverse('ticket_list'))