让OneToOneField to User仅使用ModelForm呈现一个文本输入(对于User.first_name)

时间:2013-07-06 11:50:51

标签: django django-forms

假设我的模型有以下模型:

MyModel(models.Model):
    user = models.OneToOneField(User)
    age = models.IntegerField()
    is_male = models.BooleanField(default=False)

MyModelForm(models.ModelForm):
    class Meta:
        model = MyModel
        fields = ("user", # How to only insert a value for user.first_name?  
          "age")

模型形式如何仅使用它引用的模型的OneToOneField(first_name)的一个字段(user)(MyModel)?

换句话说,我希望 MyModelForm仅呈现将值传递给user.first_name 的文本输入。

我不明白为什么不可能,因为我可以成功完成以下任务:

>>> john = User.objects.create(first_name="John")

1 个答案:

答案 0 :(得分:0)

我重写了问题并修改了代码。答案可以找到here