【发布时间】:2017-06-21 14:39:17
【问题描述】:
我想利用 django 中的默认帮助文本,但我不喜欢它的处理方式。我想要:
<tr><label>djangolab</label><input>djangoinput</input><span>djangohelp></span><span class='onhovershowhelp'>?</span>
默认情况下不提供最后一个元素。悬停在“?”上的 CSS将帮助文本范围的可见性从隐藏更改为可见。
我希望事情开箱即用,因此“{{form}}”将按照我对任何模型表单的需要显示。所以我想要全局:
- 帮助文本默认跨越一些属性(z=1,隐藏)
- 添加另一个跨度以形成行。
我不想为每个模型表单/字段等执行此操作,请在模板中使用循环并手动构建此等...
【问题讨论】:
-
您想要一个字段的所有表单中的单个帮助文本吗?
-
@ArpitSolanki 再次嗨!不,我想保留 django 已经提供的所有默认文本,原样保留。我只是想稍微改变一下渲染器。我认为也许在我的所有模型继承的通用 ModelForm 类中覆盖“to_table”是可行的方法,我将开始着手解决这个问题 - 但如果有人找到更好/更好的解决方案,我会很高兴看到它.
-
不完全确定,但您可以在表单中创建一个 init 函数,然后调用 super ,然后您可以更新这样的属性
self.fields['myfield'].widget.attrs.update({'class' : 'myfieldclass'})
标签: django