0
我有以下型號:的Django的ModelForm顯示現有的實例
ynChoice = ((None, 'Acknowledgement not required'),
(True, 'Acknowledgement and consent required'),
(False, 'Acknowledgement required but consent not required'))
class AbstractForm(models.Model):
"""base class for the below 2 classes"""
#require users to say yes and no other than acknowledging #null = not required
yes_no_required = models.NullBooleanField(choices=ynChoice, blank=False)
,我把它映射到我的ModelForm:
class LiveConsentForm(forms.ModelForm):
ynChoice = (
('', '---------------'),
(None, 'Acknowledgement not required'),
(True, 'Acknowledgement and consent required'),
(False, 'Acknowledgement required but consent not required'),
)
yes_no_required = forms.TypedChoiceField(choices=ynChoice,empty_value='')
class Meta:
model = ConsentFormTemplate
這裏,ConsentFormTemplate
是AbstractForm
一個子類。我在寫的形式,因爲yes_no_required
爲nullbooleanfield的formfield空值將返回一個None
,我不想要的。
現在,當我想要我的實例化形式展現現有的記錄,LiveConsentForm(instance=templateInstance)
,我遇到一個問題。
我templateInstance.yes_no_required
的值是無,但是當HTML渲染,選擇------
。 (當yes_no_required
是True
或False
時,我沒有這種麻煩)
在這裏需要一些幫助。