将按钮附加到 django-crispy-forms 中的默认布局
Append button to default layout in django-crispy-forms
我想为多个表单编写表单助手。默认布局下所有字段都正确呈现,我想做的唯一更改是在末尾添加提交按钮,如下所示:
class MyFormHelper(FormHelper):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
// Other initialization code here
self.layout = Layout(
// default, inherited layout here
Submit('submit', 'Submit', css_class='btn btn-primary')
)
但是我不知道是否有任何方法可以显式构建默认布局。我知道我可以明确指定要在布局中呈现的所有字段,但是我不想将表单助手耦合到一个表单。
我也试过了
self.layout.append = Submit('submit', 'Submit', css_class='btn btn-primary')
但是self.layout
此时似乎是None
。
您正在寻找 FormHelper
的 add_input
方法。 See the code here, lines 153 and 275.
class MyFormHelper(FormHelper):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
// Other initialization code here
self.add_input(Submit('submit', 'Submit', css_class='btn btn-primary'))
我想为多个表单编写表单助手。默认布局下所有字段都正确呈现,我想做的唯一更改是在末尾添加提交按钮,如下所示:
class MyFormHelper(FormHelper):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
// Other initialization code here
self.layout = Layout(
// default, inherited layout here
Submit('submit', 'Submit', css_class='btn btn-primary')
)
但是我不知道是否有任何方法可以显式构建默认布局。我知道我可以明确指定要在布局中呈现的所有字段,但是我不想将表单助手耦合到一个表单。
我也试过了
self.layout.append = Submit('submit', 'Submit', css_class='btn btn-primary')
但是self.layout
此时似乎是None
。
您正在寻找 FormHelper
的 add_input
方法。 See the code here, lines 153 and 275.
class MyFormHelper(FormHelper):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
// Other initialization code here
self.add_input(Submit('submit', 'Submit', css_class='btn btn-primary'))