以Django形式显示相关的模型信息

时间:2015-03-06 08:22:14

标签: python django django-forms

比方说,我有两个模型:

class Person:
    name = models.CharField(max_length=20)
    address = models.CharField(max_length=20)

class PhoneNumber:
    person = models.ForeignKey(Person)
    number = models.CharField(max_length=20)

因此,当用户要修改PhoneNumber时,我想在表单中显示该人的地址。我正在通过formsets进行编辑,这使得它直接将信息传递给模板有点棘手,我怎么知道哪个地址属于哪种形式?或者我怎么能做到这一点?这应该显示在与ModelChoiceField不同的地方,因为我希望它被隐藏。

1 个答案:

答案 0 :(得分:1)

在模板中,可以循环使用formset中的表单。请参阅https://docs.djangoproject.com/en/1.7/topics/forms/formsets/#using-a-formset-in-views-and-templates

所以我会创建一个包含PhoneNumber模型的FormSet。在循环表单时,使用form.instance.person.address