一、概述

  内容发布:负责添加、修改、删除内容

  公告访问

二、配置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站点管理的更多相关文章

  1. Django之admin中管理models中的表格

    Django之admin中管理models中的表格 django中使用admin管理models中的表格时,如何将表格注册到admin中呢? 具体操作就是在项目文件夹中的app文件夹中的admin中注 ...

  2. django中的站点管理

    所谓网页开发是有趣的,管理界面是千篇一律的.所以就有了django自动管理界面来减少重复劳动. 一.激活管理界面 1.django.contrib包 django自带了很多优秀的附加组件,它们都存在于 ...

  3. django之admin站点

    Admin站点 通过使用startproject创建的项目模版中,默认Admin被启用 1.创建管理员的用户名和密码 python manage.py createsuperuser 然后按提示填写用 ...

  4. Django 中Admin站点的配置

    Admin站点是django提供的一个后台管理页面,可以用来对用户与数据库表数据进行管理. Admin站点配置流程 1.在settings.py文件中INSTALL_APPS列表中添加django.c ...

  5. django使用admin站点上传图片

      Django有提供文件系统支持,在Admin站点中可以轻松上传图片.使用Admin站点保存图片,需要安装Python的图片操作包 pip install Pillow 1 配置 默认情况下,Dja ...

  6. django的admin后台管理

    Admin后台管理 要进入admin后台管理首先要创建管理员账户 createsuperuser 其中密码要大于8位 使用之前要到应用下的admin.py中注册要管理的模型表 from django. ...

  7. Django框架admin后台管理和用户端静态文件

    目录 一.admin后台管理 1. 如何使用 2. 路由分发的本质 二.用户上传的静态文件的展示 1. media配置 2. 手动开设media接口 三.图片防盗链 一.admin后台管理 djang ...

  8. django的admin后台管理如何更改为中文

    新建Django的admin后端控制为英文显示,为了可以使其显示中文,可以将 setting.py配置文件修改 # LANGUAGE_CODE = 'en-us' # # # # # TIME_ZON ...

  9. BBS(第二天) Django之Admin 自动化管理数据页面 与创建一个用户注册的验证码

    1.admin的概念 # Admin是Django自带的一个功能强大的自动化数据管理界面 # 被授权的用户可以直接在Admin中操作数据库 # Django提供了许多针对Admin的定制功能 2. 配 ...

随机推荐

  1. PHP程序员从小白到高手,掌握这些技能少走弯路

    PHP程序员从小白到高手,掌握这些技能少走弯路 PHP究竟是不是最好的语言,一直以来是程序员最大的“争议”,但毋庸置疑的是,PHP绝对是最有前途和力量的变成语言,也是你入门最值得学习的语言. 作为老牌 ...

  2. Dispatch Group

    Dispatch Group A group of tasks that you monitor as a single unit. Overview Groups allow you to aggr ...

  3. EF Core 遇到“可能会导致循环或多重级联路径”

    在ef core中你可能会设计这样一个实体: public class Customer : Entity,IMustHaveTenant, IHasCreationTime { public Cus ...

  4. 013_实践HTTP206状态:部分内容和范围请求

    HTTP 2xx范围内的状态码表明了:"客户端发送的请求已经被服务器接受并且被成功处理了".HTTP/1.1 200 OK是HTTP请求成功后的标准响应,当你在浏览器中打开www. ...

  5. 回顾servlet生命周期(代码测试),读取初始化参数

    servlet生命周期 为简洁,本例使用注解方式来测试,代码部分很简单,只需要新建一个serlet,继承自HttpServlet,重写init,doGet,doPost,destory方法即可,使用注 ...

  6. Windows将自己的代码发布到Github上

    1.在GitHub上创建一个repository 2.在自己的电脑上选择工作的文件夹使用Git Bash clone刚刚创建的repository 3.此时本地git应该已经连接了GitHub,如果没 ...

  7. C# 将普通字符串转换为二进制字符串

    1.因为项目的需要,在向数据库中添加人的信息时,必须要求是英文或数字,所以想了个办法,将我们人能看懂的字符串编译成二进制字符串转入就行了. 具体的逻辑实现代码如下:

  8. 家庭记账本小程序之改(java web基础版五)

    实现修改消费账单 1.main_left.jsp中该部分,调用Servlet中的list方法 2.Servlet中的list方法,调用Dao层的list方法,跳转到list.jsp页面 3.Dao层的 ...

  9. ThreadGroup解读

    我们的项目用到了ThreadGroup 把thread放到了threadGroup中,名称统一起来了: , , 5L, TimeUnit.MINUTES, ), new ThreadFactory() ...

  10. CodeSmith如何生成实体类 ,完善版

    <%-- Name: Database Table Properties Author: Paul Welter Description: Create a list of properties ...