Django框架之Admin管理后台

前言

这几年一直在it行业里摸爬滚打,一路走来,不少总结了一些python行业里的高频面试,看到大部分初入行的新鲜血液,还在为各样的面试题答案或收录有各种困难问题

于是乎,我自己开发了一款面试宝典,希望能帮到大家,也希望有更多的Python新人真正加入从事到这个行业里,让python火不只是停留在广告上。

微信小程序搜索:Python面试宝典

或可关注原创个人博客:https://lienze.tech

也可关注微信公众号,不定时发送各类有趣猎奇的技术文章:Python编程学习

Admin

Django-admin界面是框架为我们提供的Web-APP的管理工具

在之前的练习中,我们已经多次使用它进行APP中表的DML语句操作

接下来,我们可以继续来学习,如何将Admin界面进行优化扩展,更加方便我们后台管理

admin注册设置

admin组件下,我们可以通过继承admin.ModelAdmin类进行自定义admin类的编写,用来控制展示后台所显示的数据,以及排序规则等等属性,基本语法像是下面这样

# models.py
class User(models.Model):
	name = models.CharField(max_length=20)
    age = models.IntegerField()
    def __str__(self):
        return self.name
#admin.py
class UserAdmin(admin.ModelAdmin):
    fields = ('name','age')
    # 控制admin界面模型类展示字段
admin.site.register(User, UserAdmin)

常用字段

  • list_display:在admin控制台数据列表页面展示更多的字段

  • list_display_links:用来设置当前列表中由list_display所设置的字段哪些可以点击

  • fieldsets:将admin界面下的表单输入栏进行分块

class UserAdmin(admin.ModelAdmin):
    fields = ('name','age')
    fieldsets = (
    	('第一个区域',
        	{
                'fields': ('name',)
            }
        )
       	('第二个区域',
        	{
                'fields': ('age',)
            }
        )     
    )
  • search_fields:在admin数据展示页,设置一个搜索框,设置的字段是可查找的属性
search_fields = ('name',)
  • list_filter:以什么字段进行过滤,在admin页面右侧展示
  • ordering:数据列表可以通过哪些字段进行排序
上一篇:Django Admin管理后台详解5(转)


下一篇:Django——model的创建与修改