zoukankan      html  css  js  c++  java
  • django admin

    django   admin


    • django项目创建的时候自动帮我们生成了admin的各个依赖的组件,我们在使用的时候直接访问    /admin   登录就可以了
    • 使用admin之间,首先要创建超级用户
      • python manager.py createsuperuser
    • 使用刚刚创建好的账号密码登录admin
    • 登录之后的界面

    • 注册自己的模型类
      • 创建模型类
        •  1 from django.db import models
           2 from apps.base_model import BaseModel
           3 
           4 
           5 # Create your models here.
           6 
           7 
           8 class Project(BaseModel):
           9     name = models.CharField(max_length=20)
          10 
          11     class Meta:
          12         db_table = 'tbl_project'
          13         verbose_name = '项目'
          14         verbose_name_plural = verbose_name

          在app的models里面创建模型类

      • 注册模型类
        • from django.contrib import admin
          from .models import Project
          
          # Register your models here.
          
          
          admin.site.register(Project)
        • 在models.py的同级目录下的admin里面注册该模型类
      • 刷新页面
      • 修改组名
        • from django.apps import AppConfig
          
          
          class ApiConfig(AppConfig):
              name = 'apps.api'
              verbose_name = 'api文档'
        • 在models.py的同级目录下的apps.py里面找到该项目的app类,增加verbose_name字段
        • 刷新页面
      • 修改表内容的显示方式
        • 原始的显示页面
        • 修改admin.py文件
          •  1 from django.contrib import admin
             2 from .models import Project
             3 
             4 
             5 # Register your models here.
             6 
             7 
             8 class ProjectAdmin(admin.ModelAdmin):
             9     list_display = ['id', 'name', 'insert_time', 'update_time']
            10 
            11 
            12 admin.site.register(Project, ProjectAdmin)

             创建一个管理类,继承admin.ModelAdmin,增加list_display属性,该属性为一个列表,字表里面的元素字符串都必须为被管理模型类的所有的字段,然后在注册模型类的时候将模型类的管理类一起注册

          • 修改后的显示页面
          • 其他属性作用详情
            •  1 from django.contrib import admin
               2 from .models import Project
               3 
               4 
               5 # Register your models here.
               6 
               7 
               8 class ProjectAdmin(admin.ModelAdmin):
               9     # 显示列表页的设置
              10     list_display = ['id', 'name', 'insert_time', 'update_time']  # 显示的字段
              11     ordering = ['id']  # 修改排序方式
              12     list_display_links = ['id', 'name']  # 制定字段点击跳转
              13     search_fields = ['name', 'insert_time', 'update_time']  # 制定搜索字段,当该字段未被定义时,搜索功能不存在
              14     list_filter = ['insert_time', 'update_time', 'delflag']  # 制定过滤字段,当该字段未被定义时,过滤功能不存在
              15     list_per_page = 2  # 制定每页显示的个数
              16 
              17     # 显示详情页的设置
              18     # fields = ['name', 'delflag']  # 制定显示详情页的内容,且和fieldsets属性冲突
              19     fieldsets = [  # 将详情页的显示内容分组显示,且和fields属性冲突
              20         ('详情', {'fields': ['name']}),
              21         ('设置', {'fields': ['delflag']}),
              22     ]
              23 
              24 
              25 admin.site.register(Project, ProjectAdmin)
          • 设置后的页面

             

  • 相关阅读:
    asp.net zero 8.2 学习-9-多租户设置,发送邮件配置
    asp.net zero 8.2 学习-8-实现在页面添加、编辑、删除、查看实体
    asp.net zero 8.2 学习-7-展示实体列表,实现查询,分页,过滤,排序功能
    asp.net zero 8.2 学习-6-权限控制
    asp.net zero 8.2 学习-5-实现增删改查服务及API测试
    asp.net zero 8.2 学习-4-创建接口及服务
    asp.net zero 8.2 学习-3-添加实体,并迁移到数据库
    asp.net zero 8.2 学习-2-创建一个页面
    asp.net zero 8.2 学习-1-安装
    .net core 3.1 jwt认证
  • 原文地址:https://www.cnblogs.com/ivy-blogs/p/11343286.html
Copyright © 2011-2022 走看看