后台管理Models
1.后台的配置
登录地址 :http://localhost:8000/admin
创建后台管理员(超级用户):
在终端输入:./manage.py createsuperuser
Username : 输入用户名,默认为系统账户名
Email Address : 电子邮件
Password : 密码
Password(again) : 确认密码
2.Models的基本管理
1.在应用中的 admin.py 中注册要管理的实体类
1.admin.py
作用:注册要管理的Models类,只有注册后才能管理
2.注册Models
from .models import *
admin.site.register(Entry)
from .models import * # Register your models here.
# 第一个参数是实体类,第二个是高级管理类的类名。
admin.site.register(Author,AuthorAdmin)
2.修改Models提升可读性
1.重写每个实体类中的 __str__()
后台显示的将以 __str__ 的返回值为准
def __str__(self):
return self.name
3.通过Models类的内部类Meta定义其展现形式
class Author(models.Model):
... ...
class Meta:
#1.指定映射到的表的名称(改属性完成后需要同步数据库,要不然后面可能会报错)
db_table = 'author'
#2.定义在后台的admin中显示名称(单数)
verbose_name = '作者'
#3.定义在后台的显示名称(复数)
verbose_name_plural = verbose_name
#4.定义数据在后台的排序方式,前面添加-,表示降序排
ordering = ['-age','id']
3.Models的高级管理
1.在 admin.py 中创建高级管理类并注册
1.定义 EntryAdmin 类 ,继承自 admin.ModelAdmin
class AuthorAdmin(admin.ModelAdmin):
pass
2.注册高级管理类
admin.site.register(Entry,EntryAdmin)
ex:
admin.site.register(Author,AuthorAdmin)
2.允许在EntryAdmin中添加属性
1.list_display
作用:定义在列表页上显示的字段
取值:由属性名组成的元组或列表,以下的list_display_links,list_editable,search_fields,list_filter,fields都是这样的取值方式。
# 定义显示在列表页上的字段
list_display = ('name','age','email')
2.list_display_links
作用:定义在列表页上也能够链接到详情页的字段
注意:取值必须要出现在list_display中
# 定义允许链接到详情页的字段们
list_display_links = ('email','name')
3.list_editable
作用:定义在列表页上就能够修改的字段们
注意:取值必须要出现在list_display中但不能出现在list_display_links中
# 定义在列表页中就允许修改的字段
list_editable = ('age',)
4.search_fields
作用:定义搜索栏中允许搜索的字段值们
# 定义搜索字段
search_fields = ('name',)
5.list_filter
作用:列表页的右侧在增加过滤器实现快速筛选
# 定义右侧过滤器
list_filter = ('name','age')
6.date_hierarchy
作用:列表页的顶部增加一个时间选择器,
取值:属性必须是 DateField 或 DateTimeField 的列
# 增加时间选择器
date_hierarchy = 'book_date' # 时间字段
7.fields
作用:在详情页面中,指定要显示哪些字段并按照什么样的顺序显示
#指定在详情页上显示的字段以及顺序,如果还有多余的字段没有写的话,那就不显示。
fields = ('name','email','age')
8.fieldsets
作用:在详情页面中对字段们进行分组显示
注意:fieldset 与 fields 不能共存
取值:
fieldsets = (
#分组1
('分组名称',{
'fields':('属性1','属性2'),
'classes':('collapse',) #如果加了这个,表示可以收缩显示。
}),
#分组2
()
)
后台管理Models的更多相关文章
- Django—使用后台管理Models
后台的配置 1.创建后台管理员 [root@localhost study_django]# python manage.py createsuperuser [root@localhost stud ...
- 第三百八十节,Django+Xadmin打造上线标准的在线教育平台—将所有app下的models数据库表注册到xadmin后台管理
第三百八十节,Django+Xadmin打造上线标准的在线教育平台—将所有app下的models数据库表注册到xadmin后台管理 将一个app下的models数据库表注册到xadmin后台管理 重点 ...
- MVC5 网站开发之七 用户功能 1、角色的后台管理
角色是网站中都有的一个功能,用来区分用户的类型.划分用户的权限,这次实现角色列表浏览.角色添加.角色修改和角色删除. 目录 奔跑吧,代码小哥! MVC5网站开发之一 总体概述 MVC5 网站开发之二 ...
- Django-Admin后台管理
Rhel6.5 Django1.10 Python3.5 应用环境:Python+Virtualenv(Python Virtualenv运行Django环境配置) Django-Admin后台管理 ...
- MVC5 网站开发实践 2、后台管理
目录 MVC5 网站开发实践 概述 MVC5 网站开发实践 1.建立项目 从这一部分开始做后台管理,首先是基本框架的 一.Data项目 1.项目添加EntityFramework引用 在Data项 ...
- 学用MVC4做网站六:后台管理(续)
关于后台的说明: 后台将会用easyui + ajax模式. 这里涉及两个问题,一个是使用easyui如何在前台验证模型的问题,另一个是ajax提交后返回数据. 一.Easyui验证 前台验证采用ea ...
- Django后台管理界面
之前的几篇记录了模板视图.模型等页面展示的相关内容,这篇主要写一下后台admin管理界面的内容. 激活管理界面 Django管理站点完全是可选择的,之前我们是把这些功能给屏蔽掉了.记得上篇中Djang ...
- 一步步学习Python-django开发-添加后台管理
Pyhon-djano提供了一个很强大的后台管理功能,你很轻松的就可以拥有一个后台管理平台.你需要做啥呢?你只需要将需要管理员进行管理的表注册到管理site中即可: from django.contr ...
- Part 2:模型与后台管理admin站点--Django从入门到精通系列教程
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...
随机推荐
- iptables报错:Couldn't load target `accept':/lib64/iptables/libipt_accept.so: cannot open shared object file: No such file or directory
语句:iptables -A INPUT -s 134.192.204.235 -p TCP --dport 11211 -j accept 报错:Couldn't load target `acce ...
- TortioseSVN切换账号教程
TorioseSVN如果不记住用户名密码那么基本每样连接服务器的操作都要重新请求认证这很麻烦,所以我们一般选择记住用户认证信息. 但记住用户认证信息后以后每次登录都后台自动以该用户身份登录,不像QQ自 ...
- npm node sass 安装报错
报错为 不能找到python2.7,记得曾经已经安装过python,结果npm install cnpm install npm install node-sass 各种不行,结果在cmd 输入pyt ...
- nginx+vue刷新404
问题原因:刷新页面时访问的资源在服务端找不到,因为vue-router设置的路径不是真实存在的路径.如上的404现象,是因为在nginx配置的根目录/Data/app/xqsj_wx/dist下面压根 ...
- flask项目结构(六)快速开发后台flask-admin
简介: Flask-admin 相当django的xadmin吧! 快速装配一个后台用来管理数据. Flask-admin也是有使用局限性的,他只适合开发小型快速的应用,不适合那种大型并发性高,逻辑复 ...
- 【转】C语言中字符串输入的三种方法
在网上看到,讲的还算详细,转过来学习一下...... ======================================================================= 使 ...
- XML(二)
XML XML介绍 1.什么是xml? 概念:XML(EXtensible Markup Language)XML 指可扩展标记语言(EXtensible Markup Language) 可扩展:我 ...
- Linux3.10.0块IO子系统流程(3)-- SCSI策略例程
很长时间以来,Linux块设备使用了一种称为“蓄流/泄流”(plugging/unplugging)的技术来改进吞吐率.简单而言,这种工作方式类似浴盆排水系统的塞子.当IO被提交时,它被储存在一个队列 ...
- 1.1最简单的socket连接
socket 服务器代码 # -*- coding: utf-8 -*-from socket import * myHost = '' #''说明所有IP都可以连接 myPort = 50007 # ...
- Java作业五
1.编程生成10个1~100之间的随机数,并统计每个数出现的概率. 这个博文里面又random的详细解释:https://www.cnblogs.com/ningvsban/p/3590722.htm ...