有没有办法在其help_text中显示字段自己的值?



在我的Django应用程序中,我有一个模型,其中包含一个名为URL的字段。我希望在其help_text字符串中将此 URL 显示为链接。因此,如果此字段中存在值,我可以进入该对象并单击 URL 字段下方的帮助文本。

如何做到这一点?

最简单的方法是手动覆盖它;

form = MyForm()
form.fields['my_field'].help_text = form.cleaned_data.get('my_field').url
# wrap in try since CD may not exist.

您还可以构建一个自定义表单字段,该字段知道如何根据自己的值设置其help_text。

class MyField(forms.AField):
    def __init__(self, *args, **kwargs):
        super(MyField, self).__init__(*args, **kwargs)
        self.help_text = self.clean(self).my_field_attribute

我不确定 django 在 help_text 场上做了什么样的转义,但简单地将其标记为django.utils.safestring.mark_safe可能就足以让它渲染 HTML。

最新更新