admin
执行顺序 : Admin
- 执行admin.py,导入models
第一次进来的时候,先创建admin.site对象(如果下次再有引入,不会重新创建)
- 拿到对象后执行该对象下的register()方法
- 目的是将 注册的类 添加到_registry{}中
- admin.site是实例化AdminSite的对象
- 实例化完成后,执行__init__方法
- 拿到一个_registry = {}
- 再看AdminSite类下的register()方法,里面执行的是啥?
- register()可以传进两个参数,第二个参数默认为None
- 如果我们自己定义了一个RoleConfig(admin.ModelAdmin):类, 它会优先调用自定义的类.
- 调用register后.会传进去一个_registry
- 你注册一个它就会在_registry里面生成一个键值对
- _registry = {
models.Role : ModelAdmin(models.Role,admin.site),
}
- _registry = {
models.Role : RoleConfig(models.Role,admin.site),
} // 它会调用内部的一个 list_display
- 咱们综上所有都是为了生成 _registry 这个字典
=====================================================================================
接下来,通过我们访问admin 可以看到.
- 注册过的每一张表,都生成若干张表.在这里咱们默认为 增删改查四张表
- 请求过来后,咱们应该执行视图.
- 当运行程序时,
- 会先找到每一个APP中的admin.py文件,并加载(记得要注册哦)
- 创建admin.site中的对象,执行register方法.
- 接下来来到urls,在此处执行如图. 再次调用admin.site的urls
- 这个urls看起来是个属性对不对. 别急…给你图
- 看到@property没
- 伪造成属性,其实它的本质是个方法哦
- 看它的返回值,三个参数用逗号隔开. 它其实就是返回了一个元组.
- 该元组下,有三个参数,第一个参数是个函数. 我们点进去看看
- 由此可见, 第一个元素返回了一个列表
- 手动展示一下
- 接下来我们来看看这个列表是个啥?
admin的更多相关文章
- Django admin定制化,User字段扩展[原创]
前言 参考上篇博文,我们利用了OneToOneField的方式使用了django自带的user,http://www.cnblogs.com/caseast/p/5909248.html , 但这么用 ...
- Django admin美化插件suit应用[原创]
前言 由于比较懒,自己弄了一个用户验证,没有自己写后台,用了django自带的user认证,并通过admin直接进行管理,但默认的admin并不漂亮,于是使用了这个django-suit插件,效果对比 ...
- OpenStack Mitaka 版本中的 domain 和 admin
OpenStack 的 Keystone V3 中引入了 Domain 的概念.引入这个概念后,关于 admin 这个role 的定义就变得复杂了起来. 本文测试环境是社区 Mitaka 版本. 1. ...
- Django Admin
//设置admin列表名称 def __str__(self): return u'%s' % self.name class Meta: db_table ="数据库的那个表" ...
- Django基础,Day3 - 编写 django admin
Django 自带了一个简易编辑后台,可以称为"内容发布器",一般是提供给站点管理员使用的,其最开始也是开发出来提供给报社编辑和发布新闻使用的. 创建超级管理员: $ python ...
- SB Admin 2 学习笔记1
需要掌握能够搭建起一个 dashboard 的能力, 因为很少有运维开发团队有专职的前端, bootstrap 也要讲个基本法. SB Admin 2, 一个免费的 bootstrap theme, ...
- 【Django】--Models 和ORM以及admin配置
Models 数据库的配置 1 django默认支持sqlite,mysql, oracle,postgresql数据库 <1>sqlite django默认使用sqlite的数据库 ...
- Django admin 权威指南(一)
版本: Django 1.10 此部分由官方文档<6.5.1 The Django admin site>翻译而来. 6.5.1.1 概览 默认情况下,使用startproject的时候, ...
- 【原创】kafka admin源代码分析
admin包定义了命令行的一些实现 一.AdminOperationException.scala 一个异常类,表示执行admin命令时候抛出的异常 二.AdminUtils.scala admin一 ...
- [django]Django站点admin支持中文显示和输入设置
正文: Django站点admin支持中文输入设置,操作如下: 1 需要确定的你的数据库的client客户端和服务端的编码设置为utf-8,如果不是,请将其设置成utf-8编码,我采用mysql,详情 ...
随机推荐
- JavaSE初步学习笔记
PS:个人用来随时记录学习的过程,格式比较混乱,仅供个人参考与复习知识点 Dos命令行,课程中常见的命令 Dir:列出当前目录下包含的文件 Md:在当前目录下创建文件 Rd:在当前目录下删除指定文件夹 ...
- mysql如何查看索引使用情况以及优化 - guols0612
mysql中支持hash和btree索引.innodb和myisam只支持btree索引,而memory和heap存储引擎可以支持hash和btree索引 我们可以通过下面语句查询当前索引使用情况: ...
- js 去掉数组中重复值,不重复的值保留
这里介绍2中方式:js代码如下 var arr=[1,7,3,2,1,4,12,3,"3",3] function compare(arr) { var result = [], ...
- kubernetes入门实践
k8s中文文档 k8s概念比较多,有什么概念的疑惑的推荐看k8s中文文档. me的环境 操作系统:centos7 docker:1.12.6 环境跟me的不一致?不要慌,基本大部分操作都是行的通的. ...
- lucene6+HanLP中文分词
1.前言 前一阵把博客换了个模版,模版提供了一个搜索按钮,这让我想起一直以来都想折腾的全文搜索技术,于是就用lucene6.2.1加上HanLP的分词插件做了这么一个模块CSearch.效果看这里:h ...
- [数字图像处理]常见噪声的分类与Matlab实现
1.研究噪声特性的必要性 本文的内容主要介绍了常见噪声的分类与其特性. 将噪声建模,然后用模型去实现各式各样的噪声. 实际生活中的各种照片的老化,都能够归结为下面老化模型. 这个模型非常easy,也能 ...
- Python3简单的输入输出及内置函数查看
工作之余和女朋友一起学Python3,代码都是她敲的,有点辣眼睛,仅做参考. 1.题目:输入"姓名",输出"你好,姓名" 有关安装和打开Python shell ...
- 在无人值守程序(服务)中调用Microsoft Graph
作者:陈希章 发表于 2017年5月31日 什么是无人值守程序(服务) 我在此前用了几篇文章分别介绍了在桌面应用程序(控制台),Web应用程序(ASP.NET MVC),以及PowerSehll脚本中 ...
- Winform开发框架中工作流模块之申请单草稿处理
在我们开发工作流模块的时候,有时候填写申请单过程中,暂时不想提交审批,那么可以暂存为草稿,以供下次继续填写或者提交处理,那么这个草稿的功能是比较实用的,否则对于一些填写内容比较多的申请单,每次要重填写 ...
- Intellij IDEA编译代码出现红色标志
如图 原因:项目没有模块化加载 解决方法: 快捷键 Ctrl+Alt+Shift+S 进入 Project Structure 界面,选择 Modules --> Sources -->选 ...
- Django admin定制化,User字段扩展[原创]