如何将HTML类添加到Django表单的help_text中?

时间:2010-02-13 21:33:01

标签: python django

我有一个简单的表格

class MyForm(forms.Form):
    ...
    fieldname = forms.CharField(help_text="Some help text")

如果我喜欢的话,我可以用django的方便{{ form.as_ul }}来显示这个表格,现在我需要设计help_text的风格,我不知道如何。 Django似乎没有将该字符串包装在任何可以让我的CSS到达它的内容中,所以此刻,我已经恢复到:

class MyForm(forms.Form):
    ...
    fieldname = forms.CharField(help_text='<div class="helptext">Some help text</div>')

知道是错的,所以我在这里寻求更好的建议。

3 个答案:

答案 0 :(得分:13)

更方便的方法是:

from django.utils.safestring import mark_safe

然后:

field = models.TextField(help_text=mark_safe("some<br>html"))

答案 1 :(得分:7)

您可以从表单选项中自定义UI。解决问题的更灵活方法是创建自己的表单模板,然后重用它而不是{{ form.as_something }}。从Django文档中阅读这些主题:

当我需要大量定制的表格标记但保持干燥时,这非常有效。

答案 2 :(得分:2)

我想没有其他办法,否则可能不需要这张票:http://code.djangoproject.com/ticket/8426

您可以应用此处提供的修补程序。