【问题标题】:Render Markdown to HTML while preserving headers, newlines, etc.?在保留标题、换行符等的同时将 Markdown 渲染为 HTML?
【发布时间】:2020-04-21 13:44:16
【问题描述】:

新年快乐!我已经开始了我的新的一年,下定决心让 Markdown 渲染到 HTML 为我的 Django 博客工作。我遇到了 Django Markdownify,它还不错!我设法通过get_context_data 渲染了我的降价文件,如下面installation and usage 所述:

views.py

class MarkDown(TemplateView):
  template_name = 'index.html'

  def get_context_data(self, **kwargs):
      markdowntext = open(os.path.join(os.path.dirname(__file__), 'templates/test.md')).read()

      context = super(MarkDown, self).get_context_data(**kwargs)
      context['markdowntext'] = markdowntext

      return context

index.html

{% load markdownify %}
{{ markdowntext|markdownify }}

虽然基本的渲染可以工作,但也有一些主要的缺点。其中:

  1. 无法识别标头(例如,### My Header 中的 ### 被完全剥离)
  2. 新行处理不当(不以任何形式尊重空格,但块引用适用于新行 (>))

仅这两个问题就足以让我停下来寻找在 Django 中将 Markdown 转换为 HTML 的替代解决方案。我确实为the header problem 开了一个问题,我会等待回音。在那之前,如果有人可以推荐一些 Django 特定的解决方法,我将不胜感激。

【问题讨论】:

    标签: python html django markdown


    【解决方案1】:

    关于主题的谷歌搜索结果的简要总结:

    Django Integrated Markdown Editors - 允许编辑和预览 Markdown 以及可能的其他格式。也许没有那么轻。通常提供最好的 html 转义:

    支持 Markdown 的 Django 字段:

    其他:

    【讨论】:

      猜你喜欢
      • 2013-04-21
      • 2020-09-24
      • 1970-01-01
      • 2015-03-11
      • 1970-01-01
      • 2016-06-18
      • 2020-03-11
      • 1970-01-01
      相关资源
      最近更新 更多