前言
[上一篇文章]https://blog.csdn.net/weixin_42567323/article/details/102622963)完成了文章详情页面,这篇文章就完成使用MarkDown语法书写文章.
感谢大神的教程:Django搭建个人博客.
一.使用MarkDown
MarkDown我们都不陌生,现在用的CSDN博客里面就是用的MarkDown语法来写的文章,那么我们自己做的博客里如何添加MarkDOwn呢?
首先下载MarkDown:
pip install markdown
下载好以后就开始使用.
首先编写我们的视图函数:
article/views.py:
def article_detail(request,id):
# 取出相应文章
article = ArticlePost.objects.get(id=id)
article.body = markdown.markdown(article.body,
extensions=[
# 包含 缩写、表格等常用扩展
'markdown.extensions.extra',
# 语法高亮扩展
'markdown.extensions.codehilite',
])
context = {'article':article}
return render(request,'article/detail.html',context)
在article_detail函数中加上markdown.
然后修改templates/article/detail.html:
<div class="col-12">
<p>{{ article.body|safe }}</p>
</div>
加上safe是因为浏览器默认从外输入的字符串是不合法的,加上safe以后就变成了合法的,
接下来去我们的后台管理的编辑文章中加入一段markdown格式的文本.然后运行项目:
文本中可以写入markdown文本了,但是代码不好看,也就是说没有高亮,接下来就把代码整的高亮一些.
在static目录中新建一个目录md_css/,一会儿放置代码高亮的样式文件。
安装Pygments:
pip install Pygments
进入md_css目录,在终端输入:
pygmentize -S monokai -f html -a .codehilite > monokai.css
回车后检查一下,在md_css目录中是否自动生成了一个叫monokai.css的文件,这是一个深色背景的高亮样式文件。
然后在base.html中添加这个刚生成的css文件
base.html
<link rel="stylesheet" href="/static/bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" href="/static/md_css/monokai.css">
再次运行项目:
可以看到,代码有高亮效果了.
写在最后
本文是个人的一些学习笔记,如有侵权,请及时联系我进行删除,谢谢大家.