zoukankan      html  css  js  c++  java
  • admin——django自带数据库管理工具

    admin是Django自带的数据库管理工具,是一个app

    在admin.py中可以自己定制类来使admin数据库管理页面展现自己想要查看的信息

    models.py

    from django.db import models
    
    # Create your models here.
    
    
    class Book(models.Model):
        title = models.CharField(max_length=32)
        price = models.DecimalField(max_digits=6, decimal_places=2)
        pub_date = models.DateField()
        authors = models.ManyToManyField(to="Author")
    
        def __str__(self):
            return self.title
    
    
    class Author(models.Model):
        name = models.CharField(max_length=32)
    
        def __str__(self):
            return self.name
    View Code

    admin.py

    from django.contrib import admin
    from app01.models import *
    
    # Register your models here.
    
    
    class BookConfig(admin.ModelAdmin):
        """自定制类  使得在admin数据库管理页面可以看到自己想要看的信息"""
        list_display = ["title", "price", "pub_date"]  # 多对多字段不可以用于此处
        list_display_links = ["title"]  # 设置可链接的字段  设置后,点击该字段便可以进入编辑页面
        list_filter = ["pub_date"]  # 以所设置的字段作为筛选器 进行记录查询
        list_editable = ["price"]  # 设置可编辑字段,注意:如果在list_display_links中设置了的字段,在此处不可以再设置
        search_fields = ["title", "price"]  # 设置检索字段(模糊查询:输入关键字即可查询)
        date_hierarchy = "pub_date"  # 过滤日期
    
        # action:批量操作记录
        def func(self, request, queryset):  # request:请求  queryset:所选中的那些你想要操作的数据
            print(self, request, queryset)
            # 对选中记录作操作:
            queryset.update(pub_date="2012-1-1")  # 将所选记录的出版日改为2012年1月1日
        func.short_description = "出版日改为2012年1月1日"
        actions = [func,]
    
        fields = ["title", "price", "pub_date", "authors"]  # 在添加记录的页面显示的字段
        # exclude = ["pub_date"]  # 在添加记录的页面不显示的字段,与fields相反
    
        ordering = ["id"]  # 按id升序排列   降序用["-id"]
    
    
    admin.site.register(Book, BookConfig)  # 源码:register(self, model_or_iterable, admin_class=None, **options)
    # model_or_iterable=Book, admin_class=BookConfig
    
    print(admin.site._registry)
    
    admin.site.register(Author)
    View Code

  • 相关阅读:
    解决取消input标签中disabled属性
    【转】jQuery源码分析-13 CSS操作-CSS-类样式-addClass+removeClass+toggleClass+hasClass
    Bigpipe学习【转】
    用户请求的生命周期[传统模式与BigPipe]
    gcc扩展语法一:在表达式中的语句和声明
    分享一个关于pthread线程栈在mm_struct里面的分布问题
    neo4j 安装步骤 转自:http://blog.csdn.net/luoluowushengmimi/article/details/19987995
    sudoers文件解析 转自:http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=1971013
    匿名union
    VMware虚拟机修改BIOS启动项
  • 原文地址:https://www.cnblogs.com/yanlin-10/p/9583487.html
Copyright © 2011-2022 走看看