如何通过Django中的视图显示多个表单

时间:2015-12-01 10:23:53

标签: python django

我是Django的新手,创建了一个网站,其中包含多个表格(主要是复选框),需要填写以提交任务。 Models.py

class M1(models.Model):
  T1=model.NullBooleanField()
  T2= model.NullBooleanField()
class M2(models.Model):
  N1=model.NullBooleanField()
  N2= model.NullBooleanField()

Forms.py`

class M1Form((forms.ModelForm): 
  class Meta: 
     model = M1 
     fields = ['T1','T2']
     widgets=.........
 class M2Form((forms.ModelForm): 
   class Meta: 
     model = M2 
     fields = ['N1','N2']
     widgets=.........

views.py

   def home_page(request):
       tmpl_vars = { 
       'form': M1Form        
    }    
    return render(request, 'my_app/test.html',tmpl_vars)

我的问题是我不清楚如何通过views.py加载M2Form的形式。现在我试图在网页上访问它,目前只有M1Form变量可见。

1 个答案:

答案 0 :(得分:1)

如果您需要详细解释,Daniel Reseman的评论意味着写在views.py

def home_page(request):
   tmpl_vars = { 
       'form': M1Form,
       'form2': M2Form,
   }    
   return render(request, 'my_app/test.html',tmpl_vars)

然后在模板中,您可以将其用作{{form2}}