2010-09-06 19 views

Répondre

12

Importez User dans votre admin.py désinscrivez-le, créez le nouveau ModelAdmin (ou sous-classe celui par défaut) et devenez fou.

Il ressemblerait à quelque chose comme cela, je suppose:

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.

+0

+1. Nettoyer. C'est ce que je ferais. –

+0

Merci! Cela fonctionne complètement pour moi! – radious

0

Exemple de travail sans perdre toutes les actions par défaut de inline etc.
nous ajouterons ici une action qui active les utilisateurs sélectionnés.

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)