Django BooleanField值

时间:2011-09-28 12:53:23

标签: django

我有一个像这样的表单字段

IS_EMPLOYED_CHOICES = (
    ('1', 'yes'), ('0', 'no')
    )
class AddEmployee(forms.Form):
    is_employed = forms.ChoiceField(choices=IS_EMPLOYED_CHOICES)

,模型中的字段为BooleanField

is_employed = models.BooleanField()

我知道BooleanField是一个varchar,其中包含'1''0' TrueFalse

但是我想将此值从模型传递到上面的表单字段,因此当它为False时会显示no,而当它为真时会显示yes

 emp_profile = Employees.objects.get(pk=1)
 emp_form = AddEmployee(initial={
      'is_employed' = emp_profile.is_employed
 })

不起作用

2 个答案:

答案 0 :(得分:3)

当实际值出现时,它是TrueFalse而不是'1''0'

所以你会做类似

的事情
IS_EMPLOYED_CHOICES = (
    (True, 'yes'), (False, 'no')
    )

它应该有效

答案 1 :(得分:0)

我认为如果你删除引号会有效: IS_EMPLOYED_CHOICES =(     (1,'是'),(0,'不')     ) (点头)祝你好运