【发布时间】:2016-02-28 04:58:48
【问题描述】:
我们在代码审查期间陷入了争论。在 django 项目中保存长格式帮助文本的最佳位置在哪里?
情况:我们需要在一个字段中添加比较长(大约 320 个字符)的帮助文本。对于表单渲染,我们使用 ModelForm。对于表单渲染,我们使用引导库。
意见 A:直接将其添加到 HTML 模板中。
# template.html
<div class="form-group">
<label for="{{ form.field.id_for_label }}">{{ form.field.label }}</label>
{{ form.field }}
<span class="help-block">
Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text.
</span>
</div>
优点:
- 最好在 html 文件中保留较长的 help_text,而不是 .py
- 将来我们可能想要添加 HTML 标记,最好将它也包含在 HTML 文件中。
选项 B:将其添加到 ModelForm 的 Meta。
# forms.py
help_texts = {
'field': 'Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text Help text.'
}
# template.html
{% bootstrap_field form.field %}
优点:
- 字段是自动生成的,不是硬编码的。
- 将来我们也可以在其中包含带有
mark_safe()的HTML。
您如何看待这些选项?您能否分享您对处理 help_text 的最佳方式的看法?
【问题讨论】: