私はhtmlを含むTextFieldを持つモデルを持っています。 TextField
に<a href="http://googke.ru">google</a>
を含む行があるとします。
APIは"<a href=\"http://googke.ru\">google</a>"
を返します。シリアライザでエスケープせずにHTMLコンテンツを返す方法は?
"
をエスケープするにはどうすればよいですか?
私はhtmlを含むTextFieldを持つモデルを持っています。 TextField
に<a href="http://googke.ru">google</a>
を含む行があるとします。
APIは"<a href=\"http://googke.ru\">google</a>"
を返します。シリアライザでエスケープせずにHTMLコンテンツを返す方法は?
"
をエスケープするにはどうすればよいですか?
あなたはescape
という名前のメソッドを持っているhtml
モジュール、使用することができます:<、文字に&を変換し、> HTMLセーフ配列に文字列sに
html.escape(s, quote=True)
を。このような文字がHTMLに 含まれている可能性のあるテキストを表示する必要がある場合は、これを使用します。オプションのフラグの引用がtrueの場合は、 文字( ")とは、( ')も翻訳され、これは
<a href="...">
のように、引用符で区切られたHTML属性値に含める のために役立ちます新バージョン3.2に。 。
s = '<a href="http://googke.ru">google</a>'
その後:
s
はとしよう
from html import escape
html_line = escape(s)
今html_line
はs
STRが含まれています呼ばれる、あなたは文字に< > &
などを保つが、"
のエスケープを避けたい場合は、あなたがhtml
モジュールの他の方法を利用することができ
<a href="http://googke.ru">google</a>
:このように見て、任意の「エスケープ」せずにINGのunescape
:
from html import unescape
html_line = unescape(s)
今html_line
は、次のようになります。
<a href="http://googke.ru">google</a>
API? 'mark_safe'を使うことができます:https://docs.djangoproject.com/en/1.11/ref/utils/#django.utils.safestring.mark_safe –
こんにちは、@dimazurbik私は疑問に思っていました。 –