我们在代码审查期间遇到了争论。在django项目中保留长形帮助文本的最佳位置在哪里?
情况:我们需要在字段中添加相对较长(约320个字符)的帮助文本。对于表单呈现,我们使用的是ModelForm。对于表单呈现,我们使用bootstrap库。
意见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>
优点:
选项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的最佳方式的看法?
答案 0 :(得分:-1)
项目django-silhouette很好地解决了这个问题,而这正是我在当前项目中的目标。
至于问题本身,我将帮助文本放在HTML中作为临时解决方案,直到你解决了在HTML中重复自己的问题(可以使用帮助django-silhouette或只是共享HTML部分) )。