アイデアは次のとおりです。stackoverflow と同様のタグを使用して、いくつかのテキストを jinja2 に送信します。それらをテキストを含むマークアップとして扱い、太字、斜体などのテキストをhtmlで生成するようにjinja2に指示するにはどうすればよいですか?
ありがとうございました。
アイデアは次のとおりです。stackoverflow と同様のタグを使用して、いくつかのテキストを jinja2 に送信します。それらをテキストを含むマークアップとして扱い、太字、斜体などのテキストをhtmlで生成するようにjinja2に指示するにはどうすればよいですか?
ありがとうございました。
私はdjango-markdownに慣れているので、フィルターを使用することはこれを達成するための良い方法だと思います:
<div class="content">{{ article.body|rst }}</div>
そのようなフィルタが jinja2 に存在するかどうかはわかりませんが、非常に簡単に記述できるはずです。この行の何かを推測します(テストされていないコード):
from docutils.core import publish_parts
import jinja2
def rst_filter(s):
return jinja2.Markup(publish_parts(source=s, writer_name='html')['body'])
environment.filters['rst'] = rst_filter
あなたはこれを行うことができるはずです:
from docutils.core import publish_string
import jinja2
html = publish_string(source=text, writer_name='html')
node = jinja2.Markup(html)
node
スコープに実際に含めるJinja2ノードはどこにありますか。