2016-01-28 31 views
3

我試圖在布爾字段上選擇是/否。默認的小部件是checkboxinput。但是,如果我重寫與選擇默認控件我得到一個: NameError: Select is not definedDjango模型表格如何輸出從布爾菲爾德選擇是/否

我想這可能是因爲我需要設置是/否關聯的布爾值在booleanfield,但不知道這個應該怎麼做?

型號:

class User(models.Model): 
    online_account = models.BooleanField() 

形式:

class AccountForm(forms.ModelForm): 

    class Meta: 
     model = User 
     fields = ('online_account') 
     labels = { 
      'online_account': 'Do you have an online account', 
     } 
     widgets = {'online_account': Select()} 

回答

4

我發現(和在Django 1.9.6測試)this gist。它應該這樣做:

from django import forms 

class Form(forms.Form): 
    field = forms.TypedChoiceField(coerce=lambda x: x =='True', 
            choices=((False, 'No'), (True, 'Yes')))