如何用django admin中的复选框替换charfield

时间:2013-08-25 22:11:23

标签: python django forms django-models admin

好的,这就是。 tapStatus变量用于决定是否将此项目粘贴到网站上 - 这是一个简单的开启。我正在尝试使管理页面更加用户友好 - 现在我只使用charfield接受1或0,但复选框更合适。我可以修改管理页面以显示复选框而不是文本框吗?

class beer(models.Model):
tapStatus = models.CharField(max_length=1)
def __unicode__(self):
    return self.tapStatus
beerdescription = models.CharField(max_length=400)
def __unicode__(self):
    return self.beerdescription
beerStyle = models.CharField(max_length=5)
def __unicode__(self):
    return self.beerStyle
beerabv = models.CharField(max_length=5)
def __unicode__(self):
    return self.beerabv
beername = models.CharField(max_length=40)
def __unicode__(self):
    return self.beername

2 个答案:

答案 0 :(得分:3)

您可以使用BooleanField。这是一个例子:

class beer(models.Model):
    tapStatus = models.BooleanField(_('tap status'), default=False,
            help_text=_('decide whether or not this item gets pasted onto the website'))
    def __unicode__(self):
        return str(self.tapStatus)
    beerdescription = models.CharField(max_length=400)
    def __unicode__(self):
        return self.beerdescription
    beerStyle = models.CharField(max_length=5)
    def __unicode__(self):
        return self.beerStyle
    beerabv = models.CharField(max_length=5)
    def __unicode__(self):
        return self.beerabv
    beername = models.CharField(max_length=40)
    def __unicode__(self):
        return self.beername

答案 1 :(得分:1)

你可能想要BooleanField

class BooleanField(**options)
A true/false field.
The default form widget for this field is a CheckboxInput.
If you need to accept null values then use NullBooleanField instead.