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的更多相关文章

  1. Django—使用后台管理Models

    后台的配置 1.创建后台管理员 [root@localhost study_django]# python manage.py createsuperuser [root@localhost stud ...

  2. 第三百八十节,Django+Xadmin打造上线标准的在线教育平台—将所有app下的models数据库表注册到xadmin后台管理

    第三百八十节,Django+Xadmin打造上线标准的在线教育平台—将所有app下的models数据库表注册到xadmin后台管理 将一个app下的models数据库表注册到xadmin后台管理 重点 ...

  3. MVC5 网站开发之七 用户功能 1、角色的后台管理

    角色是网站中都有的一个功能,用来区分用户的类型.划分用户的权限,这次实现角色列表浏览.角色添加.角色修改和角色删除. 目录 奔跑吧,代码小哥! MVC5网站开发之一 总体概述 MVC5 网站开发之二 ...

  4. Django-Admin后台管理

    Rhel6.5 Django1.10 Python3.5 应用环境:Python+Virtualenv(Python Virtualenv运行Django环境配置) Django-Admin后台管理 ...

  5. MVC5 网站开发实践 2、后台管理

    目录 MVC5 网站开发实践 概述 MVC5 网站开发实践 1.建立项目   从这一部分开始做后台管理,首先是基本框架的 一.Data项目 1.项目添加EntityFramework引用 在Data项 ...

  6. 学用MVC4做网站六:后台管理(续)

    关于后台的说明: 后台将会用easyui + ajax模式. 这里涉及两个问题,一个是使用easyui如何在前台验证模型的问题,另一个是ajax提交后返回数据. 一.Easyui验证 前台验证采用ea ...

  7. Django后台管理界面

    之前的几篇记录了模板视图.模型等页面展示的相关内容,这篇主要写一下后台admin管理界面的内容. 激活管理界面 Django管理站点完全是可选择的,之前我们是把这些功能给屏蔽掉了.记得上篇中Djang ...

  8. 一步步学习Python-django开发-添加后台管理

    Pyhon-djano提供了一个很强大的后台管理功能,你很轻松的就可以拥有一个后台管理平台.你需要做啥呢?你只需要将需要管理员进行管理的表注册到管理site中即可: from django.contr ...

  9. Part 2:模型与后台管理admin站点--Django从入门到精通系列教程

    该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...

随机推荐

  1. forget suffix word aby able ability out 1

      1★ aby 2★ ability 3★ able   有`~ 能力 的,具有 这样的能力 的人或物  

  2. JAVA常识1

    DBA:                     https://baike.baidu.com/item/%E6%95%B0%E6%8D%AE%E5%BA%93%E7%AE%A1%E7%90%86% ...

  3. linux系统管理 vi编辑器

    Vim是vi improved的缩写是vi的改进版本,vi被认为是事实上的标准编辑器 所有版本的Linux都带有vi编辑器 占用的资源少 与ed,ex等其他编辑器相比,vi对用户更加友好 进入vi编辑 ...

  4. javascript 字符串函数

    字符串的截取 str.substring(0,index) 字符串转换为日期 <script> var s = "2017-04-10"; var d = s.repl ...

  5. bzoj3997

    题解: dp f[i][j]=max(f[i-1][j+1]+a[i][j],max(f[i-1][j],f[i][j+1])); 代码: #include<bits/stdc++.h> ...

  6. 删除Mac OS X中Finder文件打开方式列表的重复程序或失效的

    清理列表, 可以在终端中输入下面提供的一行命令: /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices ...

  7. java关于集合的遍历与增强for循环(foreach)的使用

     java集合类的使用可以说是无处不在,总的我们可以将之分为三大块,分别是从Collection接口延伸出的List.Set和以键值对形式作存储的Map类型集合.      许多情况需要我们遍历出集合 ...

  8. 如何在ubuntu上搭建hustoj?

    1.安装MySQL apt-get install mysql-server mysql-client 安装的过程会弹出一个框,输入sql密码,按TAB切换到ok 2.安装apache2 apt-ge ...

  9. bootstrap-select 下拉多选组件

    <div class="form-group"> <label class="col-lg-2 col-sm-2 control-label" ...

  10. String类的常用方法总结

    一.String类String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.java把String类声明的final类,不能有类.String类对象创建 ...