admin后台管理

admin后台管理

django 提供了比较完善的后台管理数据库的接口,可供开发过程中调用和测试使用

django 会搜集所有已注册的模型类,为这些模型类提拱数据管理界面,供开发者使用

admin配置步骤

创建后台管理帐号- 该账号为管理后台最高权限账号

复制代码
python3 manage.py createsuperuser

$ python3 manage.py createsuperuser
Username (leave blank to use 'tarena'): tarena # 此处输入用户名
EmaiT address:  aowei@tedu.cn # 此处输入邮箱
Password: # 此处输入密码(密码要复杂些,否则会提示密码太简单)
Password (again): # 再次输入重复密码
Superuser created successfully.

管理后台用户和组配置

注册自定义模型类

若要自己定义的模型类也能在 /admin 后台管理界中显示和管理

需要将自己的类注册到后台管理界面

注册步骤:

1.在应用app中的admin.py中导入注册要管理的模型models类,如:from .models import Book

2.调用 admin.site.register 方法进行注册如

admin.site.register(自定义模型类)

模型管理器类

作用:

为后台管理界面添加便于操作的新功能

说明:

后台管理器类须继承自 diango.contrib.admin 里的ModelAdmin 类

使用方法

1.在<应用app>/adminpy 里定义模型管理器类

复制代码
class xxXXManager(admin.ModelAdmin):
	...

2.绑定注册模型管理器和模型类

复制代码
from django.contrib import admin
from .models import *
admin.site.register(YYYY,XXXXManager) # 绑定 YYYY 模型类与 管理器类 XXXXManager

案例:
# file : bookstore/admin.py
from django.contrib import admin
from .models import Book
class BookManager(admin.ModelAdmin):
	list_display = ['id', 'title', 'price', 'market_price']
admin.site.register(Book, BookManager)

#列表页显示哪些字段的列
list display = ['id', 'title', 'pub', 'price']
#控制list display中的字段 哪些可以链接到修改页
list display links = ['title']
#添加过滤器
list filter = ['pub']
#添加搜索框[模糊查询]
search fields = ['title']
#添加可在列表页编辑的字段
list editable = ['price']

再谈Meta类

通过Meta内嵌类 定义模型类的属性,用法如下

复制代码
classBook(models .Mode1):
	title = charField(....)
	class Meta:

		1.db_table ='数据表名'
		- 该模型所用的数据表的名称。(设置完成后需要立马更新同
   步数据库)
   		2.verbose_name = '单数名'
            给模型对象的一个易于理解的名称(单数),用于显示在/admin管理界面中
   		3.verbose name_plural = '复数名'
          该对象复数形式的名称(复数),用于显示在/admin管理界
相关推荐
北冥有羽Victoria6 小时前
Django中间件实战:FBV/CBV日志全兼容
数据库·vscode·后端·python·django·sqlite·开源
源码之家1 天前
计算机毕业设计:Python中药材数据可视化与智能分析平台 Django框架 中药数据分析 医药数据分析数据分析 可视化 爬虫 (建议收藏)✅
python·深度学习·信息可视化·数据分析·django·课程设计
q_35488851531 天前
计算机毕业设计:Python中药材天地网数据挖掘与可视化系统 Django框架 中药数据分析 医药数据分析数据分析 可视化 爬虫 (建议收藏)✅
python·数据挖掘·数据分析·django·flask·课程设计
金玉满堂@bj1 天前
Django \+ MySQL 的标准 Web 项目搭建-初级练习小项目
前端·mysql·django
YJlio1 天前
2023-09-25:ChatGPT 开始支持“看、听、说”,从纯文本正式迈向多模态交互
人工智能·python·科技·chatgpt·django·交互·pygame
YJlio2 天前
7.4.5 Windows 11 企业网络连接与网络重置实战:远程访问、本地策略与故障恢复
前端·chrome·windows·python·edge·机器人·django
知识领航员2 天前
2026年推荐6个AI音乐工具
java·人工智能·python·eclipse·django·php·pygame
Mr数据杨2 天前
【Codex】用知识点配置模块构建考试与教学知识图谱
人工智能·django·知识图谱·codex·项目开发
Mr数据杨3 天前
【Codex】用班级设置模块维护教学组织基础数据
django·codex·项目开发
斯班奇的好朋友阿法法3 天前
联调注意事项清单
django