Django基于类视图中的两种形式
我有两个模型,每个模型都有自己的形式 在模板页面中,我想显示两个表单。 但我可以看到,我们只能定义一个模型和形式Django基于类视图中的两种形式,django,Django,我有两个模型,每个模型都有自己的形式 在模板页面中,我想显示两个表单。 但我可以看到,我们只能定义一个模型和形式 class TicketView(ObjectEditView): form_class = forms.FirstForm model = First def get(self, request, pk): first = get_object_or_404(First, pk = pk) return render(
class TicketView(ObjectEditView):
form_class = forms.FirstForm
model = First
def get(self, request, pk):
first = get_object_or_404(First, pk = pk)
return render(request, 'my_folder/file.html', {
'first': first,
'form': self.form_class,
})
但是我怎样才能通过我的第二个表格呢
form_classes = {forms.FirstForm, forms.SecondForm}
像这样的事情是可能的吗
在第一个表单的模板中,我可以通过
{% render_field form.comment %}
我也希望像这样显示第二个表单字段 您可以这样定义多个表单。当然,您需要像导入第一个表单一样导入第二个表单。在模板中,您将使用
{{form2}
。此表单的验证也需要单独进行
class TicketView(ObjectEditView):
form_class = forms.FirstForm
form_class2 = forms.SecondForm
model = First
def get(self, request, pk):
first = get_object_or_404(First, pk = pk)
return render(request, 'my_folder/file.html', {
'first': first,
'form': self.form_class,
"form2":self.form_class2
})
如果您有问题或这不起作用,请留下评论:)它的工作原理如何。现在只需要将当前值传递到html。例如,对于状态,我将获得下拉列表,但不会获得所选的当前值。我们必须对模型做些什么?这取决于您想做什么,但要显示表单,您不必这样做。为什么会出错?很好,谢谢。现在只需要将当前值传递到html。例如,对于状态,我将获得下拉列表,但不会获得所选的当前值。我们必须对模型做些什么?我不太确定你们需要/尝试做什么。通常,如果您想使用模型中的变量,您必须在视图中定义它们,就像我们刚才定义的“form2”一样,并在模板中使用
{{variableName}
。我建议问另一个问题或编辑你的问题,使其符合要求,但既然你的主要问题已经解决,那么正确的方法就是问另一个问题。只是你没有误解我的意思,我并不渴望得到分数,但如果你继续添加“子问题”,那么主要问题对其他用户来说就毫无用处了@user866933