Django admin设置

本文介绍如何自定义Django Admin界面,包括修改标题、添加导入数据功能及在Action菜单中增加导出选项。通过实例展示了如何注册模型、重写保存方法以实现文件内容的数据库更新,以及如何创建CSV导出功能。

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

1、更改’admin 后台管理’文字显示:

class MyAdminSite(admin.AdminSite):
    site_header = 'xx管理系统'  # 此处设置页面显示标题
    site_title = 'xx管理系统'  # 此处设置页面头部标题
 
admin_site = MyAdminSite(name='management')

2、admin后台增加导入数据功能:

# 新建一个model存储文件,并在admin.py中注册,重写save方法
@admin.register(AddDateModel)
class AddDateAdmin(admin.ModelAdmin):
    list_display = ('name',)
    def save_model(self, request, obj, form, change):
        re = super(AddDateAdmin, self).save_model(request, obj, form, change)
        # 将文件内容写进数据库(调用写库方法)
        msg = read_file_updateDatebase(obj,request)
        self.message_user(request, msg)
        return re

3、在admin页面Action下拉菜单添加功能(如导出数据):

@admin.register(MyModel)
class MyAdmin(admin.ModelAdmin):	#自定义功能
    actions = ["Fun",]
    def Fun(self, request, queryset):
        response = HttpResponse(content_type='text/csv')
    	response['Content-Disposition'] = 'attachment; filename="test.csv"'
    	writer = csv.writer(response)
    	writer.writerow(['year','month'])
    	s = queryset.values_list('year','month')
    	writer.writerows(s)
    	return response
    Fun.short_description = "操作名称"

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值