Admin
快速生成项目后台
模型只需注册就可以实现管理
增删改查
筛选
过滤
搜索
网站信息管理
AdminSite
样式定制
分组
复写页面,编写html/css等文件
创建超级用户命令:
python manage.py createsuperuser
使用admin来管理自定义的模型:
在admin.py中添加:
admin.site.register(模型类名)
可以在models.py中的类中定义admin界面中显示的模型名字和
详细界面显示的条目标题内容
通过定义class Meta改变admin界面的显示:
class Meta:
verbose_name = '用户' # 单数时的显示
verbose_name_plural = verbose_name # 复数时的显示
通过定义__str__魔术方法改变详细界面显示的条目标题内容:
def __str__(self):
return self.u_name
注册的时候添加自己的管理类:
通过继承自系统的管理类来创建管理类:
class StudentAdmin(admin.ModelAdmin):
list_display = '字段名' # 显示字段
list_filter = '字段名' # 过滤字段
search_fields = '字段名' # 搜索字段
list_per_page = '字段名' # 分页,每页显示多少条数据
ordering = '字段名' 排序规则
fieldsets = (('班级',{fields:('sgrade')}),('姓名',{fields:('aname')),) # 在数据详情界面 将数据分组显示
注册管理类同时注册自己创建的管理类:
admin.site.register(Students,StudentAdmin)
通过继承TabularInline,定义extra和model来限制创建对象时需要同时添加的级联数据对象和数据条数,定义完之后 在创建的管理类中添加inlines = [StudentInfo]
class StudentInfo(admin.TabularInline):
extra = 3
model = Student
自定义admin界面展示的类,使用AdminSite,此时所有的注册都会改成自己注册过的
自定义admin界面的网页标题和页面标题
class AdminSite(admin.AdminSite):
site_title = 'wcw_title'
site_header = 'WCW\'sheader'
site = AdminSite()
urlpatterns = [
# path('admin/', admin.site.urls),
path('admin/', site.urls),
]
配置site_url地址 即admin界面’查看站点’的跳转链接