在我的django应用程序中,我有一个名为' status'的模型字段。在其中一种获取此字段数据的表单中,我只想显示模型中所有可用选项的子集。有没有办法从表单中删除选项?我需要在数据库和管理界面中删除的选项,我可以在其中选择它。
status = models.CharField(STATUS_FIELD_NAME, choices=STATUS_CHOICES,
default=STATUS_DEFAULT,
max_length=3)
答案 0 :(得分:0)
您可以在表单中定义选项的子集:
class YourForm(forms.ModelForm):
SUBSET_CHOICES = (
(YourModel.CHOICE_ONE, _('First choice')),
(YourModel.CHOICE_TWO, _('Second choice')),
)
class Meta:
model = YourModel
fields = ['choice', ]
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['choice'].choices = self.SUBSET_CHOICES