第三方模型的 Django 管理操作
Django admin action for third party model
如何向第三方应用程序的管理界面添加操作?
示例:我想对模型进行自定义操作 django.contrib.admin.Group
。
与"action"我的意思是模型的管理列表视图的批处理操作。
相关文档:https://docs.djangoproject.com/en/1.7/ref/contrib/admin/actions/
取消注册 Group
模型的原始模型管理员,然后用您自己的模型注册 ModelAdmin
:
from django.contrib.auth.admin import GroupAdmin
from django.contrib.auth.models import Group
class MyGroupAdmin(GroupAdmin):
actions = [...]
admin.site.unregister(Group)
admin.site.register(Group, MyGroupAdmin)
更新:如果您想从多个应用程序向 ModelAdmin
添加操作,那么您必须直接访问未记录的管理员注册表:
def some_action(modeladmin, request, queryset):
pass
admin.site._registry[Group].actions.append(some_action)
如何向第三方应用程序的管理界面添加操作?
示例:我想对模型进行自定义操作 django.contrib.admin.Group
。
与"action"我的意思是模型的管理列表视图的批处理操作。
相关文档:https://docs.djangoproject.com/en/1.7/ref/contrib/admin/actions/
取消注册 Group
模型的原始模型管理员,然后用您自己的模型注册 ModelAdmin
:
from django.contrib.auth.admin import GroupAdmin
from django.contrib.auth.models import Group
class MyGroupAdmin(GroupAdmin):
actions = [...]
admin.site.unregister(Group)
admin.site.register(Group, MyGroupAdmin)
更新:如果您想从多个应用程序向 ModelAdmin
添加操作,那么您必须直接访问未记录的管理员注册表:
def some_action(modeladmin, request, queryset):
pass
admin.site._registry[Group].actions.append(some_action)