Python学习第136天(Django的admin)
admin是django强大功能之一,它能共从数据库中读取数据,呈现在页面中,进行管理。默认情况下,它的功能已经非常强大,如果你不需要复杂的功能,它已经够用,但是有时候,一些特殊的功能还需要定制,比如搜索功能,下面这一系列文章就逐步深入介绍如何定制适合自己的admin应用。
执行语句中增加:python manage.py createsuperuser 设置admin的登录账户,进入auth系统,增加用户并设置相关的权限。
在app 下的admin.py文件下写出核心语句,算是一个有Django为我们提供的比较好用的登录系统
admin.site.register(‘所传列表’.传入参数)
这里所传入的参数就是自定义的一个类,此类继承与admin.ModelAdmin
这个类里面有几个比较重要的参数:
list_display: 设置表格所需展示的字段名称
list_editable: 设置表格可以进行直接修改的字段
filter_horizontal: 在添加表格信息的内容设置,使表格信息可以进行多选可搜索选项
list_per_age: 设置多少项可以进行分页
serarch_fields: 多字段内容进行搜索
list_filters: 单字段进行精确搜索
下面说一下具体操作:
一、基本设置
1、应用注册
若要把app应用显示在后台管理中,需要在admin.py中注册。这个注册有两种方式,我比较喜欢用装饰器的方式。
先看看普通注册方法。打开admin.py文件,如下代码:
from django.contrib import admin from blog.models import Blog #Blog模型的管理器 class BlogAdmin(admin.ModelAdmin): list_display=(‘id‘, ‘caption‘, ‘author‘, ‘publish_time‘) #在admin中注册绑定 admin.site.register(Blog, BlogAdmin)