在django模型表单中删除空白级别

时间:2014-05-28 12:43:54

标签: python django

django版本:1.3.7 python版本:2.6

model.py

CHOICES = (('Hospital','Hospital'),("Doctor's office", "Doctor's office"))




place_of_first = models.CharField(max_length=100, default=None, choices=CHOICES,
                                               blank=True, null=True, verbose_name="")

form.py

class Form(ModelForm):
    def __init__(self, *args, **kwargs):
       super(Form, self).__init__(*args, **kwargs)
       self.fields['creation_date'].widget.attrs['readonly'] = True



    required_css_class = 'required'

    class Meta:
        model = MODELFORM
        widgets = {
           'place_of_first' : RadioSelect()
}

它给出了与[radioi按钮“------------------”]等无线电按钮的空白等级 我想用单选按钮删除此级别。它的非强制性领域。

2 个答案:

答案 0 :(得分:1)

由于您在模型中设置了blank=True,因此您获得破折号。尝试将其切换为blank=False

以下是Django site

中的一些信息
  

除非在字段上设置blank = False以及默认值,否则标签包含" ---------"将使用选择框呈现。要覆盖此行为,请将元组添加到包含None的选项中;例如(无,'您的显示字符串')。或者,您可以使用空字符串而不是空字符串,例如在CharField上。

答案 1 :(得分:1)

我确实面临同样的问题。更新您的forms.py文件。

 if self.fields['place_of_first'].widget.choces[0][0] == "" :
    del self.fields['place_of_first'].widget.choices[0]

我希望它对你有用!!!