Django表单如果只有一个选项,则自动选择第一个选项

问题描述 投票:0回答:2

在只有一个选项可用的情况下,是否有一种简单的方法可以在Django表单中选择下拉列表的第一个选项?

简单地说,我的意思是一个不需要定义自己的小部件的解决方案,这在我们所有(模型)表单中的变化都非常重复。

更新,因为似乎最初的问题不明确:

如果有一个选项,我希望只选择初始选项。如果选项是对另一个模型的外键引用,那么对我来说这样做的方式是不明显的:

class Category(models.Model):
     name = CharField(...)

class Post(models.Model):
    category = ForeignKey(Category)

class PostForm(forms.ModelForm):
    class Meta:
        fields = '__all__'
    [...]

现在我希望category中的PostForm字段自动选择到第一个类别,如果数据库中只有一个实例,并且如果有两个或更多类别则为--------

python django forms
2个回答
1
投票

我认为不需要任何解释,请看下面的代码

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')

0
投票

怎么样使用这个:

Your_Dropdown = forms.TypedChoiceField(choices=your choises, initial='FIRST_OPTION')

如文档中所示:Here

© www.soinside.com 2019 - 2024. All rights reserved.