有没有可能在管理页面中为django UserModel创建自定义操作?我希望自动将用户添加到组中(比如将他添加到员工中,设置一些额外的值,等等),当然也要创建可以收回这些更改的操作。
谢谢你的帮助。
发布于 2010-09-06 22:44:47
在你的admin.py中导入User
,取消它的注册,为它创建新的ModelAdmin
(或者是默认的子类),然后放飞它。
我猜它应该是这样的:
from django.contrib.auth.models import User
class UserAdmin(admin.ModelAdmin):
actions = ['some_action']
def some_action(self, request, queryset):
#do something ...
some_action.short_description = "blabla"
admin.site.unregister(User)
admin.site.register(User, UserAdmin)
Reference for actions.
发布于 2016-08-20 07:41:01
在不丢失所有默认内联操作等情况下的工作示例。
在这里,我们将添加激活选定用户的操作。
from django.contrib import admin
from django.contrib.auth.models import User
from django.contrib.auth.admin import UserAdmin
def make_active(modeladmin, news, queryset):
queryset.update(is_active=True)
make_active.short_description = u"Activate selected Users"
class CustomUserAdmin(UserAdmin):
actions = [make_active]
admin.site.unregister(User)
admin.site.register(User, CustomUserAdmin)
https://stackoverflow.com/questions/3652287
复制相似问题