目录
原视频教程链接
过滤器
语法
{{ value | filter }}
示例
将之前写的edit_page.html
进行修改如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Edit Page</title>
</head>
<body>
<form action="{% url 'blog:edit_action' %}" method="post">
{% csrf_token %}
<input type="hidden" name="article_id" value="{{ article.id | default:'0' }}">{# 隐藏表单存放article.id #}
<lable>文章标题
<input type="text" name="title" value="{{ article.title }}">
</lable>
<br>
<lable>文章内容
<input type="text" name="content" value="{{ article.content }}">
</lable>
<br>
<input type="submit" value="提交">
</form>
</body>
</html>
这里使用了{{ article.id | default:'0' }}
,可直接将新建文章id(为‘0’),和修改文章id区别开,不需要冗余的代码。
Admin增强
创建Admin配置类
修改blog/admin.py
:
from django.contrib import admin
from .models import Article
# 创建Admin配置类
class ArticleAdmin(admin.ModelAdmin):
list_display = ('title', 'content') # 设置显示字段
# 注册
admin.site.register(Article, ArticleAdmin)
Admin过滤器
models.py
中添加:
pub_time = models.DateTimeField(null=True)
blog/admin.py
中添加:
list_filter = ('pub_time',)
命令行输入:
python manage.py makemigrations
python manage.py migrate
代码仓库
以上所有的代码都在我的github上
django博客代码