zoukankan      html  css  js  c++  java
  • admin 的使用及参数配置

    admin的使用
            创建超级用户
            在admin.py注册模型表
                admin.site.register(models.author)
            django默认注册两张自带的表
            
        
        admin 生成自定义模型url的规律
            http://127.0.0.1:8000/admin/app01/book/  书籍的查看
            http://127.0.0.1:8000/admin/app01/book/1/change/  书籍的编辑
            http://127.0.0.1:8000/admin/app01/book/1/delete/  书籍的删除
            http://127.0.0.1:8000/admin/app01/book/add/  书籍的添加
            
            推测:
            http://127.0.0.1:8000/admin/app01/publish/  出版社的查看
            http://127.0.0.1:8000/admin/app01/publish/1/change/  出版社的编辑
            http://127.0.0.1:8000/admin/app01/publish/1/delete/  出版社的删除
            http://127.0.0.1:8000/admin/app01/publish/add/  出版社的添加
            
            真理:
            http://127.0.0.1:8000/admin/app01/publish/
            http://127.0.0.1:8000/admin/app01/publish/1/change/
            http://127.0.0.1:8000/admin/app01/publish/1/delete/
            http://127.0.0.1:8000/admin/app01/publish/add/
        
        规律:admin会给注册了的模型表起码生成增删改查四条url!!!
        
        
        admin参数配置
                # Book表的配置类  admin.py中
            class BookConfig(admin.ModelAdmin):
                list_display = ['title','price','publish','publishDate']
                list_display_links = ['title','price','publish']
                search_fields = ['title','price']
                list_filter = ['publish','authors']
    
                # actions功能
                def patch_init(self,request,queryset):
                    queryset.update(price=666)
    
                patch_init.short_description = '价格批量初始化'
                actions = [patch_init]
    
            
            list_display:
                指定数据展示的字段
                注意多对多字段不能放在list_display列表里进行展示
            list_display_links:
                指定跳转字段(跳转到当前字段所在数据的编辑页)
            search_fields
                search_fields = ['title','price']
                输入框输入1,则会搜索title里包含1的或者price包含1的数据
                    1.在页面上渲染出搜索框
                    2.支持条件与条件之间的""查询
            list_filter
                1.它不是用来筛选普通字段的,它是用来帮你筛选外键字段的!!!
                2.支持组合查询,只要是点亮的选项都是""的关系  name='xx'&price='xxx'
            actions
                批量处理数据
                    # 先定义一个批量处理函数
                    def patch_init(self,request,queryset):
                        queryset.update(price=666)     #--->通过对queryset对象的操作数据
                    # 给这个函数命名  不写就是首字母大写的函数名
                    patch_init.short_description = '价格批量初始化'  #--->万物接对象,这一步是给函数加一个属性
                    # 配置到配置类中
                    actions = [patch_init]
  • 相关阅读:
    教会他人,让其成为你的接棒人
    2015年看的52部电影计划
    我的2015年读书计划,每两周读完一本书!
    拯救你的电脑之文件命名规范与目录规划
    出租WiFi到底靠不靠谱?
    使用观察者模式更新Fragment的内容
    android静默安装和智能安装(转)
    Android拨打电话不弹出系统拨号界面总结
    Android通过AIDL和反射调用系统拨打电话和挂断电话
    Android设为系统默认的短信应用
  • 原文地址:https://www.cnblogs.com/Hale-wang/p/12030638.html
Copyright © 2011-2022 走看看