![](/img/trans.png)
[英]Django modelform integrate the fields for the attributes of a foreignkey
[英]Django - ModelForm with fields derived from ForeignKey attributes
考慮以下模型
class Book(models.Model):
name = models.CharField(max_length=100)
author = models.ForeignKey(Author)
class Author(models.Model):
name = models.CharField(max_length=50)
我想要一個表格來輸入書籍和作者的名字(均為文本輸入)。 我不希望作者使用ModelChoiceField
。 如果作者不存在,我將在我的視圖中創建它。 我可以通過聲明性地定義 author_name字段和max_length來實現這一點,如下所示:
class BookForm(ModelForm):
author_name = forms.CharField(max_length=50)
class Meta:
model = Book
fields = ['name']
如何避免在BookForm中對author_name
的max_length進行硬編碼? 我可以以某種方式從鏈接的Author模型中推斷出它嗎?
參考:以編程方式獲取Django模型字段的max_length :
要獲取模型字段的max_length
,
您可以使用Author._meta.get_field('name').max_length
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.