博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
admin——django自带数据库管理工具
阅读量:5127 次
发布时间:2019-06-13

本文共 1795 字,大约阅读时间需要 5 分钟。

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.titleclass Author(models.Model):    name = models.CharField(max_length=32)    def __str__(self):        return self.name
View Code

 

admin.py

from django.contrib import adminfrom 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=BookConfigprint(admin.site._registry)admin.site.register(Author)
View Code

 

 

转载于:https://www.cnblogs.com/yanlin-10/p/9583487.html

你可能感兴趣的文章
java sendmail
查看>>
Python_记一次网站数据定向爬取实现
查看>>
Oracle SQL
查看>>
repo常用命令及常见问题汇总
查看>>
redis缓存穿透和缓存雪崩
查看>>
localstorage和cookie封装在一起更方便
查看>>
JVM垃圾收集器
查看>>
国庆七天乐——第六天
查看>>
Android实现一键获取课程成绩dome
查看>>
也谈学习
查看>>
C++primer plus第六版课后编程题答案8.4(补)
查看>>
CentOS 7 yum安装失败问题
查看>>
ArcGIS移动开发策略的选择[转]
查看>>
LoadRunner参数化详解
查看>>
P1985 翻转棋
查看>>
python_day1
查看>>
PowerDesigner中CDM数据类型和PDM数据类型间的mapping (对应关系)详解
查看>>
如何解决…has been modified since the precompiled header… was built的问题
查看>>
找出现有Vector或ArrayList或数组中重复的元素&给现有Vector或ArrayList或数组去重
查看>>
js检测对象的类型
查看>>