2013-08-19 90 views
2

所以我有一个模型Member从一种形式创建同一型号的多个实例

class Member(models.Model): 
    first_name = models.CharField(max_length = 15) 
    last_name = models.CharField(max_length = 15) 
    house = models.ForeignKey('House', null = True) 
    created_on = models.DateTimeField('created on') 
    user = models.OneToOneField(User, null = True) 

和形式创建模型:

class MemberForm(forms.Form): 
    first_name = forms.CharField() 
    last_name = forms.CharField() 
    email_address = forms.EmailField() 

我的应用作品,你创建一个家并指定你家中的会员人数。就我工作而言,但我希望它能够继续到一个显示适当数量的表单(每个成员一个)的新页面,然后使用提供的数据为每个表单创建一个成员实例。我很困惑我如何从每个表单中访问数据,因为它们在技术上都在同一个HTML表单中。更具体地说,我是如何识别哪个电子邮件字段与哪个名字字段相关联等等。任何帮助将不胜感激,谢谢。

+0

只是一个小建议,你真的不需要这个模型的first_name和last_name,除非你真的需要这些特殊原因。既然你和用户模型有关系,包含这些字段。这可能还有一个数据库命中来检索名称,但如果您仍然查询用户对象,也会发生这种情况...... – Jingo

+0

我非常感谢您所说的话,我已经考虑到了这一点,但是凭借我的工作,我认为拥有名字和姓氏字段是必要的冗余。 – apardes

回答

2

这是formsets的用途。

请注意,如果您使用model forms(和模型表单集),则从成员表单创建成员会更容易。

相关问题