Python web模版Django-17 模型之 后台管理创建的表

本文详细介绍如何在Django项目中配置后台管理界面,包括注册模型、展示字段、添加搜索栏及过滤器等功能,帮助开发者高效管理数据。

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

        将新创建的表注册到Django,就可以在后台用界面操作,其方法如下:

step1: 打开sign下的admin.py文件,加入如下注册代码。

from django.contrib import admin
from sign.models import Event, Guest

# Register your models here.
admin.site.register(Event) # 通知管理工具为这些模块提供操作界面
admin.site.register(Guest)
step2:运行程序,登陆localhost/admin/,可以看到后台已经为sign application



Step3:通过上面的UI,我们可以方便的给表Events,Guests添加数据条目;添加完毕后,点击"Events"或"Guests", 可以看到当前的已有的数据,只是字段并没有完全显示出来。


step4:为了在这里显示更多的表字段,我们更新一下admin.py。 注意:list_display列表中的字段需要是“表中的字段”,“id"(这个Django会自动创建,我们在models.py无需写),“外键”等,可以参看models.py上自己定义的表类属性。

from django.contrib import admin
from sign.models import Event, Guest

# Register your models here.
class EventAdmin(admin.ModelAdmin):
    list_display = ['name', 'status', 'start_time', 'create_time', 'limit', 'id']

class GuestAdmin(admin.ModelAdmin):
    list_display = ['realname', 'phone', 'email', 'sign', 'create_time', 'event', 'event_id']

admin.site.register(Event, EventAdmin) # 通知管理工具为这些模块提供操作界面
admin.site.register(Guest, GuestAdmin)

step5: 重新刷新,可以看到更多字段展现出来


step6: 给管理UI添加搜索栏,过滤器

search_fileds = ['name', 'address'] 

如果搜索"小米  北京", 等同与sql : WHERE (name ILIKE '%小米%' OR address ILIKE '%小米%') AND (name ILIKE '%北京%' OR address ILIKE '%北京%') 

from django.contrib import admin
from sign.models import Event, Guest


# Register your models here.
class EventAdmin(admin.ModelAdmin):
    list_display = ['name', 'address', 'status', 'start_time', 'create_time', 'limit', 'id']
    search_fields = ['name', 'address']  # 搜索栏
    list_filter = ['status', 'address']  # 过滤器

class GuestAdmin(admin.ModelAdmin):
    list_display = ['realname', 'phone', 'email', 'sign', 'create_time', 'event', 'event_id']
    search_fields = ['realname', 'phone']
    list_filter = ['sign']

admin.site.register(Event, EventAdmin) # 通知管理工具为这些模块提供操作界面
admin.site.register(Guest, GuestAdmin)


不知道为什么,优快云突然没法贴图了,重新登陆也不行。第六步的效果就是在第五步的基础上,增加了搜索栏和过滤器的UI。这一篇先写到这。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值