Django - Crispy Forms - 自定义输入定位和内联单选按钮

Ale*_*dor 5 html django django-crispy-forms

不久前我一直在使用 django-crispy-forms,我想知道是否有办法设置输入的位置,如col-md-XX类或其他东西,使其看起来更好,而不仅仅是字段列表。

下面是一个例子:

这是脆皮形式的“正常”渲染,使用{{ form | crispy }}{% crispy form %} 在此处输入图片说明

我想在 forms.py 或类似的东西中使用 python 代码呈现这样的效果。实际上,我是通过键入 HTML 代码并使用as_crispy_field标记进行渲染来实现的。 在此处输入图片说明

最后,当我渲染表单时,{% crispy form %}我可以使用内联样式的单选按钮,但使用as_crispy_field标记,即使InlineRadios在助手中布局,单选按钮仍然看起来垂直。

as_crispy_field 在此处输入图片说明

{% crispy form %} 在此处输入图片说明

有没有办法让收音机看起来水平或内联as_crispy_field标签?

小智 6

您可以使用 Crispy InlineRadio Layouts \xe2\x80\x94 django-crispy-forms 1.0.0 文档

\n\n
class ProgramaForm(forms.ModelForm):\n   class Meta:\n        model = MyModel\n        fields = [\'programa\']\n\n   def __init__(self, *args, **kwargs):\n        super(ProgramaForm, self).__init__(*args, **kwargs)\n        self.fields[\'programa\'].required = True\n        self.helper = FormHelper()\n        self.helper.layout = Layout(\n           Div(InlineRadios(\'programa\')),\n        )\n        self.helper.add_input(Submit(\'submit\', \'Submit\'))\n
Run Code Online (Sandbox Code Playgroud)\n\n

使用 Django 的 Crispy Forms 实现布尔值的水平单选按钮

\n