私の Django アプリには、URL という名前のフィールドを持つモデルがあります。help_text 文字列で、この URL をリンクとして表示したいと考えています。このフィールドに値が存在する場合、オブジェクトに移動して、URL フィールドの下にあるヘルプ テキストをクリックできるようにします。
これはどのように行うことができますか?
私の 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 をレンダリングするには、単にマークを付けるだけで十分な場合があります。