假设我有以下具有modelform的模型:
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")
模型窗体如何仅使用其引用的模型(MyModel
)的OneToOneField(user
)的一个字段(first_name
)?
换句话说,我希望MyModelForm
只呈现一个将值传递给user.first_name
的文本输入。
我不明白为什么这不可能,因为我可以成功地做到以下几点:
>>> john = User.objects.create(first_name="John")
我重写了这个问题并修改了代码。答案可以在这里找到。