Django Crispy forms忽略单选按钮的初始值
我试图在crispy forms InlineRadio字段中有条件地设置初始值,但被忽略了 我设置Django Crispy forms忽略单选按钮的初始值,django,django-forms,django-crispy-forms,Django,Django Forms,Django Crispy Forms,我试图在crispy forms InlineRadio字段中有条件地设置初始值,但被忽略了 我设置初始值如下: class CustomWizardForm3(ModelForm): def __init__(self, user, *args, **kwargs): self.helper = FormHelper() self.helper.layout = Layout( Fieldset("", Div(ImageInline
初始值
如下:
class CustomWizardForm3(ModelForm):
def __init__(self, user, *args, **kwargs):
self.helper = FormHelper()
self.helper.layout = Layout(
Fieldset("",
Div(ImageInlineRadios('sleeve_length'), css_class='span8 clearfix'),
Div(
CustomStyleDiv('armhole_edging_stitch', 'armhole_edging_height'),
css_class="row-fluid")
)
)
super(CustomWizardForm3, self).__init__(user, HELP_TEXT, *args, **kwargs)
if self.instance.is_vest():
self.fields['sleeve_length'].initial = DC.SLEEVE_VEST
class Meta:
model = IndividualDesign
fields = ('armhole_edging_stitch', 'armhole_edging_height', 'sleeve_length',)
在模型中,套管长度
声明为:
sleeve_length= models.CharField(
max_length = 20,
choices = DC.SLEEVE_LENGTH_CHOICES,
null = True,
blank = True)
我已经在调试器中逐步完成了它,并且initial
属性设置为我所期望的。但是,当生成单选按钮时,不检查任何内容。有什么好处?香酥和/或Django表单快把我逼疯了
ETA:ImageInlineRadios是标准crispy thing的一个简单子类
类图像InlineRadios(InlineRadios):
在radio_buttons.html模板文件中,我们有:
<input type="radio"
{% if choice.0|stringformat:"s" == field.value|stringformat:"s" %} checked="checked"{% endif %}
Argh。“这就是为什么仅为未绑定表单显示初始值。对于绑定表单,HTML输出将使用绑定数据。”是否有任何方法可以在绑定表单中的字段上设置值?form.data是不可变的。这太荒谬了。
<input type="radio"
{% if choice.0|stringformat:"s" == field.value|stringformat:"s" %} checked="checked"{% endif %}