3
我有一個多對多的關係模型,其實際上顯示爲多個選擇列表的形式。在一個特定的地方,我想把它顯示爲下拉單選 - 任何想法如何做到這一點?django - 多對多字段作爲下拉的形式
我有一個多對多的關係模型,其實際上顯示爲多個選擇列表的形式。在一個特定的地方,我想把它顯示爲下拉單選 - 任何想法如何做到這一點?django - 多對多字段作爲下拉的形式
請參閱關於overriding default field types or widgets的文檔。
如果你已經有了一個Book
模型,用ManyToMany
關係Author
,像這樣:
class Author(models.Model):
name = models.CharField(max_length=100)
title = models.CharField(max_length=3, choices=TITLE_CHOICES)
def __unicode__(self):
return self.name
class Book(models.Model):
name = models.CharField(max_length=100)
authors = models.ManyToManyField(Author)
那麼你可以做這樣的事情:
from django.forms import ModelForm, Select
class AuthorForm(ModelForm):
class Meta:
model = Author
widgets = {
'name': Select(),
}
NB。這段代碼沒有經過測試,但希望能夠讓你順利。