django crispy forms - 添加字段帮助文本?

django crispy forms - add field help text?

查看脆皮表格我找不到是否支持帮助文本。我正在尝试按照以下

向 select 多个字段添加一些帮助文本
Field('site_types', Title="Site Types", size="15", help_text="Hold down cmd on MacOS or ctrl on windows to select multiple"),

这是否受支持,或者我会使用其他一些属性来实现吗?

谢谢

一点儿也没有使用过 crispy 形式,但我很确定您只是像在常规形式上那样定义 help_text。查看 docs,如果您碰巧使用 Bootstrap 模板包,则还有一些额外的帮助文本配置选项。

这是我用来显示帮助文本的工作示例

class myForm(forms.ModelForm):
     def __init__(self, *args, **kwargs):
        super(myForm, self).__init__(*args, **kwargs)
        self.fields['site_types'].help_text = "Please select bla bla bla"

与其在 crispy_forms.layout.Field 中定义 help_text,不如在定义选项的地方定义它(或使用 Pavan Kumar T S 的解决方案)。

forms.py

from django import forms
from crispy_forms.helper import FormHelper
from crispy_forms.layout import Layout, Field

SITE_TYPES = [
    ('business', 'Business'),
    ('education', 'Education'),
    ('entertainment', 'Entertainment'),
    ('news', 'News'),
    ('other', 'Other')
]

class TestForm(forms.Form):
    site_types = forms.MultipleChoiceField(
        choices=SITE_TYPES,
        help_text="Hold down cmd on MacOS or ctrl on windows to select multiple"
    )

    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.helper = FormHelper()
        self.helper.form_tag = False
        self.helper.layout = Layout(
            Field('site_types', Title="Site Types", size="15")
        )

表格:

Form with help text displayed below the field