1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > admin——django自带数据库管理工具

admin——django自带数据库管理工具

时间:2019-07-13 10:57:12

相关推荐

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.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="-1-1") # 将所选记录的出版日改为1月1日func.short_description = "出版日改为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

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。