django中的admin应用

本文介绍了Django的admin应用,包括如何创建超级用户,如何自定义模型在admin界面的显示,通过`Meta`和`__str__`方法调整界面内容,创建管理类并注册,以及使用`TabularInline`实现级联数据对象管理。此外,还讲解了如何自定义admin界面展示类,设置界面标题、页面标题以及admin站点的跳转链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Admin

快速生成项目后台
模型只需注册就可以实现管理
	增删改查
	筛选
	过滤
	搜索
	网站信息管理
		AdminSite
样式定制
	分组
	复写页面,编写html/css等文件

创建超级用户命令:

python manage.py createsuperuser

使用admin来管理自定义的模型:

在admin.py中添加:
admin.site.register(模型类名)

可以在models.py中的类中定义admin界面中显示的模型名字和
详细界面显示的条目标题内容
通过定义class Meta改变admin界面的显示:

    class Meta:
        verbose_name = '用户'  # 单数时的显示
        verbose_name_plural = verbose_name  # 复数时的显示

通过定义__str__魔术方法改变详细界面显示的条目标题内容:

def __str__(self):
    return self.u_name

注册的时候添加自己的管理类:
通过继承自系统的管理类来创建管理类:

class StudentAdmin(admin.ModelAdmin):
    list_display = '字段名'   # 显示字段
    list_filter = '字段名'    # 过滤字段
    search_fields = '字段名'  # 搜索字段
    list_per_page = '字段名'  # 分页,每页显示多少条数据
    ordering = '字段名'       排序规则
    fieldsets = (('班级',{fields:('sgrade')}),('姓名',{fields:('aname')),)  # 在数据详情界面 将数据分组显示

注册管理类同时注册自己创建的管理类:

admin.site.register(Students,StudentAdmin)

通过继承TabularInline,定义extra和model来限制创建对象时需要同时添加的级联数据对象和数据条数,定义完之后 在创建的管理类中添加inlines = [StudentInfo]

class StudentInfo(admin.TabularInline):
    extra = 3
    model = Student

在这里插入图片描述

自定义admin界面展示的类,使用AdminSite,此时所有的注册都会改成自己注册过的
自定义admin界面的网页标题和页面标题

class AdminSite(admin.AdminSite):
    site_title = 'wcw_title'
    site_header = 'WCW\'sheader'
	site = AdminSite()

urlpatterns = [
    # path('admin/', admin.site.urls),
    path('admin/', site.urls),
]

配置site_url地址 即admin界面’查看站点’的跳转链接

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值