Gjango入门与实践(七)实用小技巧

一、Template过滤器

1.1什么是过滤器

写在模版中,属于Django模版语言
可以修改模版中的变量,从而显示不同的内容

1.2怎么使用过滤器

{{ value | filter }}
例子:{{ list_nums | length }}
过滤器可叠加:{{ value | filter1 | filter2 | filter3| … }}

二、Django shell

1.什么是Django shell ?

它是一个python的交互式命令行程序
它自动引入了我们的项目环境
我们可以使用它与我们的项目进行交互

2.如何使用Django shell

python manage.py shell
from blog.models import Article
Article.objects.all()
Gjango入门与实践(七)实用小技巧

3.有什么用?

我们可以使用Django shell 来进行一些调试工作
测试未知的方法

三、Admin增强

1.创建Admin配置类

class ArticleAdmin(admin.ModelAdmin):
注册:admin.site.register(Article, ArticleAdmin)

2.显示其他字段

list_display = (‘title’, ‘content’)
list_display同时支持tuple和list

新增字段:
1.在Article类下添加字段pub_time = models.DateTimeField(auto_now=True)
2.在命令行执行数据迁移:python manage.py makemigrations
3.移植:python manage.py migrate
4.ArticleAdmin的list_display里面加入pub_time
刷新页面显示(多出了时间列):
Gjango入门与实践(七)实用小技巧

让默认时间显示出来,修改Article里面的pub_time = models.DateTimeField(null=True)
(不要忘记移植操作)
显示:
Gjango入门与实践(七)实用小技巧

3.过滤器

list_filter = (‘pub_time’, )

刷新页面显示:
Gjango入门与实践(七)实用小技巧

4.官方文档

https://docs.djangoproject.com/en/2.2/ref/contrib/admin/