在只有一个选项可用的情况下,是否有一种简单的方法可以在Django表单中选择下拉列表的第一个选项?
简单地说,我的意思是一个不需要定义自己的小部件的解决方案,这在我们所有(模型)表单中的变化都非常重复。
更新,因为似乎最初的问题不明确:
如果有一个选项,我希望只选择初始选项。如果选项是对另一个模型的外键引用,那么对我来说这样做的方式是不明显的:
class Category(models.Model):
name = CharField(...)
class Post(models.Model):
category = ForeignKey(Category)
class PostForm(forms.ModelForm):
class Meta:
fields = '__all__'
[...]
现在我希望category
中的PostForm
字段自动选择到第一个类别,如果数据库中只有一个实例,并且如果有两个或更多类别则为--------
我认为不需要任何解释,请看下面的代码
post_type_choices = (
('article', 'article'),
('tip', 'tip'),
('snippet', 'snippet'),
)
class Post(models.Model):
post_type = models.CharField(
max_length=10, choices=post_type_choices,default='article')
怎么样使用这个:
Your_Dropdown = forms.TypedChoiceField(choices=your choises, initial='FIRST_OPTION')
如文档中所示:Here