文章目录
一、本次任务
- 美化前端文章列表显示页面
- 后台可以进行添加文章数据
- 后台自定义显示文章列表的字段
- 后台自定义新增文章时的显示字段
二、文件作用的总结及其他
使用博客模板美化文章列表
- 网上下载的一套博客模板(点击这里下载全套模板)到本地
- 静态文件复制(css,img,js等)到 blog/static 下面(这里static目录是新建的,为了区别模块,static 文件下新建 blog 文件夹)
- 使用博客模板中的
index.html
替换掉原先的index.html
页面,启动 django 服务可以看到这个模板中固定的内容,但样式混乱 - django 中引入静态文件的语法:(templates/blog/index.html)
{% load static %} <link rel="stylesheet" href="{% static 'blog/css/bootstrap.min.css' %}">
{% %} # 使用模板标签 {{ }} # 获取模板变量值
blog/admin.py
- 注册自定义的 models,需要在后台显示的都要在此注册
- 定制后台功能:
- 自定义后台数据列表显示的字段
list_display
- 注意:不能显示
ManyToMany
字段的,会报错
- 注意:不能显示
- 自定义新增数据时 form 视图显示的字段
fields
- 保存数据时,传递默认值,重写方法
save_model(self, request, obj, form, change)
- 自定义后台数据列表显示的字段
blog/apps.py
- 定制 app 的自定义后台显示名称
verbose_name
blog/models.py
- 自定义后台显示名称,在
class Meta:
,verbose_name_plural
是复数显示名称 - 自定义字段显示名称,字段属性用
verbose_name
- 创建时间取当时的时间,字段属性
default
- 修改时间每次保存时实时更新,重写
save(self, *args, **kwargs)
方法
blogproject/settings.py
- INSTALLED_APPS 原先配置的是 blog,自定义后只能配置一个,如图
- 配置静态文件
STATIC_URL = '/static/'
同步到数据库
三、问题汇总
{% load static %}
标签位置写在哪里好?- 目前测试写在
<html>
标签后面可以,且不会有错误提示
- 目前测试写在
- 什么时候用模板标签?有哪些模板标签?
- 不同的 app 的话,css 如何引用,静态文件的路径怎么设置?
- 在 Django 汉化的过程中,是直接修改字段的
verbose_name
属性实现的,如果要实现多语种的博客网站呢,怎么翻译更灵活些? - 创建 Post 的时候,如果 tags 填写错误,如何删除?
附上 Gitee 地址:https://gitee.com/langxing/HelloDjango-blog-tutorial