Solo quiero agregar la fecha de suscripción en la lista de usuarios en el sitio de administración de Django CRUD. ¿Cómo puedo hacer eso?¿Cómo personalizar la página de administración de usuario auth en Django CRUD?
Gracias por su ayuda
Solo quiero agregar la fecha de suscripción en la lista de usuarios en el sitio de administración de Django CRUD. ¿Cómo puedo hacer eso?¿Cómo personalizar la página de administración de usuario auth en Django CRUD?
Gracias por su ayuda
finalmente lo hice como esto en mi archivo admin.py:
from django.contrib.auth.admin import UserAdmin
from django.contrib.auth.models import User
UserAdmin.list_display = ('email', 'first_name', 'last_name', 'is_active', 'date_joined', 'is_staff')
admin.site.unregister(User)
admin.site.register(User, UserAdmin)
Suponiendo que su clase de usuario es User
y su campo de fecha de suscripción es , esto es lo que hay que añadir en su admin.py
class UserAdmin(admin.ModelAdmin):
list_display = ('subscription_date',)
admin.site.register(User, UserAdmin)
Esto puede trabajar incluso con la auth.user edifi? – Natim
Esto debería heredar del UserAdmin incorporado; de lo contrario, perderá todas las demás personalizaciones. Y también debe anular el registro del registro incorporado; La respuesta de Natim tiene el código correcto. –
Otra forma de hacerlo es ampliar la clase UserAdmin.
También puede crear una función para poner en list_display
from django.contrib.auth.admin import UserAdmin
from django.contrib.auth.models import User
class CustomUserAdmin(UserAdmin):
def __init__(self, *args, **kwargs):
super(UserAdmin,self).__init__(*args, **kwargs)
UserAdmin.list_display = list(UserAdmin.list_display) + ['date_joined', 'some_function']
# Function to count objects of each user from another Model (where user is FK)
def some_function(self, obj):
return obj.another_model_set.count()
admin.site.unregister(User)
admin.site.register(User, CustomUserAdmin)
¿Puedo hacer lo siguiente (sin '__init__'), o hay un problema con él? ? 'class CustomUserAdmin (UserAdmin): list_display = list (UserAdmin.list_display) + ['date_joined']' – jdm
¡También podemos extender UserAdmin en lugar de modificarlo dinámicamente! – Natim
Para aclarar, esto se debe agregar al archivo admin.py de nivel superior de su sitio. –
¿Puedo preguntar a qué te refieres con el nivel superior? –