django admin
- django项目创建的时候自动帮我们生成了admin的各个依赖的组件,我们在使用的时候直接访问 /admin 登录就可以了
- 使用admin之间,首先要创建超级用户
- python manager.py createsuperuser
- 使用刚刚创建好的账号密码登录admin
-
登录之后的界面
- 注册自己的模型类
- 创建模型类
-
1 from django.db import models 2 from apps.base_model import BaseModel 3 4 5 # Create your models here. 6 7 8 class Project(BaseModel): 9 name = models.CharField(max_length=20) 10 11 class Meta: 12 db_table = 'tbl_project' 13 verbose_name = '项目' 14 verbose_name_plural = verbose_name
在app的models里面创建模型类
-
- 注册模型类
-
from django.contrib import admin from .models import Project # Register your models here. admin.site.register(Project)
- 在models.py的同级目录下的admin里面注册该模型类
-
- 刷新页面
- 修改组名
-
from django.apps import AppConfig class ApiConfig(AppConfig): name = 'apps.api' verbose_name = 'api文档'
- 在models.py的同级目录下的apps.py里面找到该项目的app类,增加verbose_name字段
- 刷新页面
-
- 修改表内容的显示方式
- 原始的显示页面
- 修改admin.py文件
-
1 from django.contrib import admin 2 from .models import Project 3 4 5 # Register your models here. 6 7 8 class ProjectAdmin(admin.ModelAdmin): 9 list_display = ['id', 'name', 'insert_time', 'update_time'] 10 11 12 admin.site.register(Project, ProjectAdmin)
创建一个管理类,继承admin.ModelAdmin,增加list_display属性,该属性为一个列表,字表里面的元素字符串都必须为被管理模型类的所有的字段,然后在注册模型类的时候将模型类的管理类一起注册
- 修改后的显示页面
- 其他属性作用详情
-
1 from django.contrib import admin 2 from .models import Project 3 4 5 # Register your models here. 6 7 8 class ProjectAdmin(admin.ModelAdmin): 9 # 显示列表页的设置 10 list_display = ['id', 'name', 'insert_time', 'update_time'] # 显示的字段 11 ordering = ['id'] # 修改排序方式 12 list_display_links = ['id', 'name'] # 制定字段点击跳转 13 search_fields = ['name', 'insert_time', 'update_time'] # 制定搜索字段,当该字段未被定义时,搜索功能不存在 14 list_filter = ['insert_time', 'update_time', 'delflag'] # 制定过滤字段,当该字段未被定义时,过滤功能不存在 15 list_per_page = 2 # 制定每页显示的个数 16 17 # 显示详情页的设置 18 # fields = ['name', 'delflag'] # 制定显示详情页的内容,且和fieldsets属性冲突 19 fieldsets = [ # 将详情页的显示内容分组显示,且和fields属性冲突 20 ('详情', {'fields': ['name']}), 21 ('设置', {'fields': ['delflag']}), 22 ] 23 24 25 admin.site.register(Project, ProjectAdmin)
-
- 设置后的页面
-
- 原始的显示页面
- 创建模型类