Django:为模板渲染加入Markdown支持
两种方法 Django 的django-markdown-deux模块 Python模块 markdown django-markdown-deux 首先需要安装: pip install django-markdown-deux 修改setting.py 把markdown-deux添加进去 INSTALLED_APPS = [ 'markdown-deux', ] 在模板里添加tags
目录3 个章节
两种方法
- Django 的
django-markdown-deux模块 - Python模块
markdown
django-markdown-deux
首先需要安装:
pip install django-markdown-deux
修改setting.py
把markdown-deux添加进去
INSTALLED_APPS = [
'markdown-deux',
]
在模板里添加tags
加载了markdown-deux-tags标签之后,在markdown内容加上过滤器就可以解析成html了。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Doc - {{ docname }}</title>
<link href="/static/css/highlights/github.css"/>
</head>
<body>
{ % load markdown-deux-tags % }
{{ content | markdown }}
</body>
</html>
使用markdown模块渲染
首先安装
pip install markdown
在views.py里使用markdown渲染
import markdown
def doc(request, name):
template = get_template('doc.html')
docfile = get_template('doc/{}.md'.format(name))
content = docfile.render()
html = template.render({
'docname': name,
'content':
markdown.markdown(content,
extensions=[
'markdown.extensions.extra',
'markdown.extensions.codehilite',
'markdown.extensions.toc',
])
})
return HttpResponse(html)
markdown模块会直接把markdown格式的文档渲染成html格式。 不过django的模板里会对html做转义,所以还需要修改一下模板。
修改doc.html
给content加上safe过滤器,表示不需要转义,直接显示原始内容。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Doc - {{ docname }}</title>
<link href="/static/css/highlights/github.css"/>
</head>
<body>
{{ content | safe }}
</body>
</html>
_EOF_
Django:为模板渲染加入Markdown支持
- 本文作者:
- 程序设计实验室
- 版权声明:
- 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
相关文章
Django项目笔记:sessions处理以及复杂对象序列化
前言:一点题外话 我发现,不更新博客的时候,不是非常忙,就是效率非常低。最近没怎么更新博客,原因是第二种= =。惭愧惭愧。 今天效率出奇的高,一天时间把PassNote后端的接口全部写完了,Django很好用,不过实际项目中还是有些框架不能实现的功能需要解决的,我比较喜欢造轮子,不过为了保证效率,还是尽量用现成的工具,减少不必要的折腾。 关于PassNote 之前应该在博客有说过,这是一个密码管理
2022-04-02 · Django · 约 1 分钟
关于uwsgi服务器的管理
前言 使用Django开发项目好是好,就是部署的时候太麻烦,使用Uwsgi服务器的话,每次修改了代码,都需要重新启动服务器才可以生效。然后uwsgi服务器的重启也挺麻烦。 看了一下官网的文档,最好是把uwsgi安装到venv虚拟环境里面,这样的话在 ps aux 的时候容易区分啦。 查看uwsgi进程 ps -aux | grep uwsgi 结束原uwsgi进程 kill -9 27543 结论
2025-10-27 · Django · 约 1 分钟
Django更换数据库和迁移数据方案
前言 双十一光顾着买东西都没怎么写文章,现在笔记里还有十几篇半成品文章没写完… 今天来分享一下 Django 项目切换数据库和迁移数据的方案,网络上找到的文章方法不一,且使用中容易遇到各类报错,本文根据 Django 官方文档和工作中的经验,稳定可靠,在博客中长期更新~ 如果你遇到同样的问题,阅读本文应该能得到比较好的解决方案。 基本步骤 Django 默认使用 SQLite 数据库方便开发,同时
2022-11-12 · Django · 约 1 分钟
如何优雅地在Django项目里生成不重复的ID?
在生成唯一 ID 这件事上,Django 和其他后端框架没啥不同的,思路都是类似的,只不过可以借助 Python 生态偷懒一下…
2024-12-08 · Django · 约 1 分钟
讨论
共 0 条加载评论中…