Django的Admin站点管理
一、概述
内容发布:负责添加、修改、删除内容
公告访问
二、配置Admin应用
在settings.py文件中的INSTALLED_APPS中添加'django.contrib.admin',默认是添加好的
三、创建管理员用户
在项目的根目录下,执行命令:python manage.py createsuperuser
依次输入用户名、邮箱、密码(密码不能太复杂)
四、汉化
修改setting.py
LANGUAGE_CODE = 'zh-Hans'
TIME_ZONE = 'Asia/Shanghai'
五、管理数据表
准备工作:在admin.py文件中添加
from .models import Grades,Students # . 表示同目录下的文件
# 注册模型类
admin.site.register(Grades)
admin.site.register(Students)
自定义管理界面:
1、代码
# 管理班级界面,需要注册一个相应的管理类
class GradesAdmin(admin.ModelAdmin): #需要继承
#列表页属性
list_display = ['pk','gname','gdate','ggirlnum','gboynum','isDelete']
list_filter = ['gname']
search_fields = ['gname']
list_per_page = 5 # 每五条一页
# 添加、修改页属性
# fields = ['ggirlnum', 'gboynum', 'gname', 'gdate', 'isDelete']
fieldsets = [
("num", {"fields":['ggirlnum', 'gboynum']}),
("base", {"fields":['gname', 'gdate', 'isDelete']}),
]
# 写好的管理类需要加到注册里
admin.site.register(Grades, GradesAdmin)
2、属性说明
列表属性:
list_display:显示字段
list_filter:过滤字段,页面右上方显示出过滤器按钮
search_fields:搜索字段,页面左上方显示出搜索框
list_per_page:分页
添加、修改页属性:
fields:属性的先后顺序
fieldsets:给属性分组
注意:fields与fieldsets不能同时使用
3、关联对象:
# 准备工作,记得注册
class StudentsAdmin(admin.ModelAdmin):
list_display = ['pk', 'sname', 'sage', 'sgender', 'scontend', 'sgrade', 'isDelete']
list_per_page = 2
需求:在创建一个班级时可以直接添加两个学生
# 在admin.py添加一个类
class StudentsInfo(admin.Tabularlnline): # 也可以继承admin.StackedInline,两张的区别在于页面显示效果不同
model = Students
extra = 2
# 注意:要在GradesAdmin类添加一行;为了节省空间,剩余的代码就不往上填了
class GradesAdmin(admin.ModelAdmin):
inlines = [StudentsInfo]
4、布尔值显示替换成想要的参数:
# 增加函数gender()
class StudentsAdmin(admin.ModelAdmin):
def gender(self):
if self.sgender:
return '男'
else:
return '女'
# 将页面列的字段替换成想要显示的字段
gender.short_description = "性别"
# 将函数gender作为参数传入,代替sgender
list_display = ['pk', 'sname', 'sage', gender, 'scontend', 'sgrade', 'isDelete']
使用装饰器完成注册:
# 用装饰器来代替之前的注册函数
@admin.register(Students)
class StudentsAdmin(admin.ModelAdmin):
完结
Django的Admin站点管理的更多相关文章
- Django之admin中管理models中的表格
Django之admin中管理models中的表格 django中使用admin管理models中的表格时,如何将表格注册到admin中呢? 具体操作就是在项目文件夹中的app文件夹中的admin中注 ...
- django中的站点管理
所谓网页开发是有趣的,管理界面是千篇一律的.所以就有了django自动管理界面来减少重复劳动. 一.激活管理界面 1.django.contrib包 django自带了很多优秀的附加组件,它们都存在于 ...
- django之admin站点
Admin站点 通过使用startproject创建的项目模版中,默认Admin被启用 1.创建管理员的用户名和密码 python manage.py createsuperuser 然后按提示填写用 ...
- Django 中Admin站点的配置
Admin站点是django提供的一个后台管理页面,可以用来对用户与数据库表数据进行管理. Admin站点配置流程 1.在settings.py文件中INSTALL_APPS列表中添加django.c ...
- django使用admin站点上传图片
Django有提供文件系统支持,在Admin站点中可以轻松上传图片.使用Admin站点保存图片,需要安装Python的图片操作包 pip install Pillow 1 配置 默认情况下,Dja ...
- django的admin后台管理
Admin后台管理 要进入admin后台管理首先要创建管理员账户 createsuperuser 其中密码要大于8位 使用之前要到应用下的admin.py中注册要管理的模型表 from django. ...
- Django框架admin后台管理和用户端静态文件
目录 一.admin后台管理 1. 如何使用 2. 路由分发的本质 二.用户上传的静态文件的展示 1. media配置 2. 手动开设media接口 三.图片防盗链 一.admin后台管理 djang ...
- django的admin后台管理如何更改为中文
新建Django的admin后端控制为英文显示,为了可以使其显示中文,可以将 setting.py配置文件修改 # LANGUAGE_CODE = 'en-us' # # # # # TIME_ZON ...
- BBS(第二天) Django之Admin 自动化管理数据页面 与创建一个用户注册的验证码
1.admin的概念 # Admin是Django自带的一个功能强大的自动化数据管理界面 # 被授权的用户可以直接在Admin中操作数据库 # Django提供了许多针对Admin的定制功能 2. 配 ...
随机推荐
- jenkins之Job建立-运行 git 脚本
新建一个自由风格的项目,运行git脚本 1.点击菜单栏中的“新任务” 2.进入该页面后输入一个项目名称,然后选择“构建一个自由风格的软件项目”,滑动到最底端,点击ok(在左下角) 3.进入下图页面后 ...
- MySQL之初识数据库
一 数据库管理软件的由来 基于我们之前所学,数据要想永久保存,都是保存于文件中,毫无疑问,一个文件仅仅只能存在于某一台机器上. 如果我们暂且忽略直接基于文件来存取数据的效率问题,并且假设程序所有的组件 ...
- 微信小程序遍历Echarts图表,实现多个饼图
如何在微信小程序中使用Echarts可以看我的另一个教程:点击查看 首先看一个简单的例子 1.wxml文件 <view style='width:100%;height:200rpx'> ...
- java 虚拟机内存模型
[声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:[http://www.cnblogs.com/smyhvae/p/4748392.html] 文章来源:[http://www.cnblog ...
- yum 安装fuser命令
yum install -y psmisc 转自:https://www.cnblogs.com/saneri/p/5465718.html 有时候我们需要umount某个挂载目录时会遇到如下问题: ...
- Spring boot 的自动配置
Xml 配置文件 日志 Spring Boot对各种日志框架都做了支持,我们可以通过配置来修改默认的日志的配置: #设置日志级别 logging.level.org.springframework=D ...
- 搭建Node.js的Web框架egg.js
1 egg.js的Request处理流程: 2. 使用nodejs下载egg.js框架 (1)现在nodejs中全局安装egg-init 即在nodejs安装根目录下执行 : d:cd nodejs ...
- 8.docker的安全性
在查看Docker安全性时,有四个主要方面需要考虑: 内核的内在安全性及其对命名空间和cgroup的支持; Docker守护进程本身的攻击面; 容器配置配置文件中的漏洞,默认情况下或用户自定义时. 内 ...
- [洛谷P1438] 无聊的数列
题目类型:差分,线段树 传送门:>Here< 题意:给出一个数列,每次给一个区间对应的加上一个等差数列,并询问某一个元素目前的值. 解题思路 所谓差分,我个人的理解就是用\(O(1)\)的 ...
- [SDOI2011]消耗战(虚树)
洛古题面 题意:给定一棵树,割断每一条边都有代价,每次询问会给定一些点,求用最少的代价使所有给定点都和1号节点不连通 暴力\(DP\) 我们先考虑暴力怎么做 设\(dp[u]\)为以\(u\)为根的子 ...