上一篇文章末尾讲到如何能够展示更多的字段在界面上,那么针对整个界面数据,如果我想按照某一个条件进行筛选,我该怎么做呢,只需要加上下面一行代码
注意:中途只有代码片段,文末有今天涉及的所有代码
1、增加筛选器
D:\cekai\xuexi\Tesla\lili\admin.py
list_filter = ('anonymous', 'created_at')
再次刷新界面:http://127.0.0.1:8000/admin/lili/feedback/
就可以看到界面出现了筛选条件
2、增加多个字段的条件查询
如果想查询一个或者多个字段的数据,可以在代码中search_fields进行筛选
search_fields = ('quality', ##
'user',
'attitude',
'speed',
'text',
'anonymous',
'created_at',
'updated_at')
3、对指定字段进行可点击操作,在代码中加入
list_display_links = ('speed', ## 对指定字段进行点击
'text',)
刷新界面,可以看到
4、指定分页
同上面一样,在代码中加入一行这个代码
list_per_page = 3
刷新界面可以看到,分页出来了
5、排序
其实排序是Django中自带的,可以不用去专门处理
6、在列表中对指定字段进行编辑
和上面一样,也是直接使用django自带的方法,只需要在代码中加入一行
list_editable = ('quality', ##对指定字段进行编辑
'attitude',
'anonymous',
)
刷新之后可看到效果
但是在这里我们不建议大家这样去做,因为这样操作,数据会不安全,所以最好注释掉,采用其他的方式
7、对不同用户指定权限
在这个管理后台里面可以对不同的用户设置不同的权限
比如说对lili01这个账号我可以设置新的权限,接下来通过图片展示
今日笔记所有代码
D:\cekai\xuexi\Tesla\lili\admin.py
from django.contrib import admin
from lili.models import Feedback
# Register your models here.
@admin.register(Feedback)
class FeedBackAdmin(admin.ModelAdmin):
list_display = ('quality', ##指定显示的字段
'user',
'attitude',
'speed',
'text',
'anonymous',
'created_at',
'updated_at')
list_filter = ('anonymous', 'created_at') ##指定筛选过滤的字段
search_fields = ('quality', ##对指定字段进行搜索
'user',
'attitude',
'speed',
'text',
'anonymous',
'created_at',
'updated_at')
list_display_links = ('speed', ## 对指定字段进行点击
'text',)
list_per_page = 3 ## 每页显示多少数据
# list_editable = ('quality', ##对指定字段进行编辑
# 'attitude',
# 'anonymous',
# )