Django表单字段标签中的换行符

时间:2012-07-25 15:38:13

标签: django forms field

有没有办法在Django中的表单字段的标签中添加换行符?设置\n只会在HTML中生成换行符,尝试<br>只会显示字符。我可以在字段中指定等效的|safe操作吗?

2 个答案:

答案 0 :(得分:17)

您可以使用mark_safe,以便不转义<br />标记。

这相当于在模板中使用safe,因此在处理用户输入时要小心。如果它是一个硬编码的字符串,那么使用它是安全的。

from django import forms
from django.utils.safestring import mark_safe

class MyForm(forms.Form):
    my_field = forms.CharField(label=mark_safe('my label<br />next line'))

答案 1 :(得分:3)

您也可以直接在模板中执行此操作,如下所示:

 {{my_field.label|linebreaks}} 

\n将转换为<br/>那样

根据doc

  

单身   换行符成为HTML换行符(<br />),后面跟着换行符   空行变为段落(</p>)。