版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/bbwangj/article/details/98026885
class Entry(models.Model):
title = models.CharField('文章标题',max_length=128)
author = models.ForeignKey(User,verbose_name='作者',on_delete=models.CASCADE)
img = models.ImageField(upload_to='blog_img',null=True,blank=True,verbose_name='博客配图')
body = models.TextField('正文',)
abstract = models.TextField('摘要',max_length=256,null=True,blank=True)
visiting = models.PositiveIntegerField('访问量',default=0)
category = models.ManyToManyField('Category',verbose_name='博客分类')
tags = models.ManyToManyField('Tag',verbose_name='标签')
created_time = models.DateTimeField('创建时间',auto_now_add=True)
modifyed_time = models.DateTimeField('修改时间',auto_now=True)
def __str__(self):
return self.title
class Meta:
ordering = ['-created_time']
verbose_name = '博客正文'
verbose_name_plural = verbose_name
(1)安装模块
pip install markdown
pip install pygments
(2)views.py
import markdown,pygments
def detail(request,blog_id):
entry = models.Entry.objects.get(id=blog_id)
md = markdown.Markdown(extensions=[
'markdown.extensions.extra',
'markdown.extensions.codehilite',
'markdown.extensions.toc',
])
entry.body = md.convert(entry.body)
entry.toc = md.toc
entry.increase_visiting()
return render(request,'blog/detail.html',locals())
(3)detail.html
把github.css放到blog/css里面,detail.html引用样式
{% extends 'blog/base.html' %}
{% load staticfiles %}
{% block title %}博客详情页{% endblock %}
{% block css %}
<link rel="stylesheet" href="{% static 'blog/css/github.css' %}">
{% endblock %}
标签和正文都加salf
(4)后台添加博客
Markdown语法测试篇
## 1.python语言介绍
编程语言主要从以下几个角度进行分类:编译型,静态型,动态性,强类型定义语言和弱类型定义语言
- 编译型:有一个负责翻译的程序来对我们的源代码进行转换,生成对应的可执行代码,这个过程就是编译(Compile),而负责编译的程序就被称为编译器(Compiler)
- 通常我们所说的动态语言,静态语言是指动态类型语言和静态类型语言
## 2.python的优缺点
- 优点:简单、开发效率高、高级语言、可移植性、可扩展性、可嵌入性
- 缺点:速度慢,但是相对的、代码不能加密、线程不能利用多CPU问题
## 3.高阶函数
```python
def func():
print('in the func')
return foo()
def foo():
print('in the foo()')
return 666
res = func()
print(res)
```
前端显示效果: