2017-12-30 24 views
0

私はDjangoでブログを構築しました。私のBlogPostモデルでは、私は "content"という名前のテキストフィールドを持っています。管理パネルからブログ投稿を作成すると、入力したカスタムHTML(リンク、コードブロック、外部画像)はすべてテンプレートとして静的なリテラルテキストとしてレンダリングされます。真の意味HTMLではありません。ブログ投稿にリンクを含める方法

ブログ投稿でマークダウンを使用できるブログを作成したいと考えています。他の誰も私以外の投稿をしているのではなく、サイト全体にクライアント対応のフォームはありません(管理者ログインページを除く)。斜体、太字、リンク、外部画像、h1、h3、段落などのカスタムHTMLをブログの投稿に使用できるように、エスケープをオフにするにはどうすればよいですか?

私は勉強するリソースを見つけようとしていますが、短くなっています。あらかじめ設定されたマークダウンアプリを使用するか、自分でロールアップする必要がありますか?

答えて

2

django.utils.html.mark_safeビューサイド から、または{{your_field | safe}}と書くことでこれを実現できます。 また、このためにカスタムテンプレートタグを使用することもできます。

+0

ありがとうございました!私はすでに{{my_field |これは、{{my_field | linebreaks}}に変更するのは簡単な修正でした。安全 }}。 – cssidy

0

1つの方法は、管理者にck editorを使用して、ツールバーでhtmlを編集することです。

&テンプレートhtmlでも安全とマークする必要があります。そうでない場合は、プレーンテキストとしてレンダリングされます。コードの下テンプレート書き込みの例について

{{ field_name |safe }} 
関連する問題