Django选择非选定字段

时间:2012-03-09 20:13:31

标签: django django-forms

我正在尝试从模型表单的选项中删除未选择的选项。

我的模型字段被声明:

priority = models.IntegerField( choices=PRIORITIES_CHOICES )

我的表单代码是:

class TaskForm(ModelForm):
def __init__(self, *args, **kwargs):
    super(TaskForm, self).__init__(*args, **kwargs)

    self.fields['priority'].required = True;

然而,未选择的字段不想消失。 (我说的是------选项)。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

尝试:

class TaskForm(ModelForm):
    def __init__(self, *args, **kwargs):
        super(TaskForm, self).__init__(*args, **kwargs)

        self.fields['priority'].choices = self.fields['priority'].choices[1:]

答案 1 :(得分:0)

如果有人仍然想知道如何在Django 1.5+中执行此操作,那么“Django方式”:

class TaskForm(ModelForm):
    def __init__(self, *args, **kwargs):
        super(TaskForm, self).__init__(*args, **kwargs)

        self.fields['priority'].empty_label = None

您也可以直接在字段声明中添加它(如果您在init中手动声明它),在查询集,窗口小部件旁边,需要等等。