tutorial template superusuario personalizar password modelos crear django django-admin user-permissions

template - personalizar admin django



¿Cuál es la diferencia entre el personal, administrador, superusuario en django? (3)

Django solo tiene un tipo de usuario. Es simplemente User . Dependiendo de los permisos que le dé al usuario, puede hacer cosas diferentes de manera predeterminada:

  1. Cualquier usuario normal puede ser autenticado (ese es el objetivo del usuario, tener un inicio de sesión).
  2. Cualquier usuario que tenga asignado el indicador de staff , puede iniciar sesión en la aplicación de administrador contribuida. Más allá de esto, no tienen otros privilegios especiales.
  3. Se pueden establecer como activos o no. Solo los usuarios activos pueden iniciar sesión.

Un superusuario es solo un método conveniente para crear un usuario con todos los permisos. Son usuarios normales que reciben personal y todos los permisos de forma predeterminada.

También hay configuraciones de ADMINS y ADMINS .

Estos se utilizan para notificaciones, cuando el sitio se está ejecutando en producción (es decir, cuando DEBUG es falso).

Los administradores son notificados de cualquier error que genere un rastreo. Se les envía por correo electrónico el rastreo e información sobre la solicitud. Los administradores se envían por correo electrónico cuando alguien solicita un enlace que no existe (básicamente, cuando se genera un 404).

Django tiene superusuario, personal, administrador ...

el superusuario y el personal están en django.contib.auth.models.UserManager . Luego está el comando createsuperuser de django-admin .

Bueno, hay aplicaciones de administrador ... ¿Cuál es la diferencia?


Lo tomo de la Documentación de Django:

Una de las partes más poderosas de Django es la interfaz de administración automática. Lo mejor es que puedes personalizarlo fácilmente.

Si inició sesión como superusuario, tiene acceso para crear, editar y eliminar cualquier objeto (modelos).

Puede crear un usuario de personal usando la bandera de personal. El indicador "personal" controla si el usuario puede iniciar sesión en la interfaz de administración (es decir, si ese usuario se considera un "miembro del personal" en su organización). Dado que este mismo sistema de usuario se puede usar para controlar el acceso a sitios públicos (es decir, no administrativos), este indicador diferencia entre usuarios públicos y administradores.

Los usuarios administradores "normales", es decir, miembros del personal activos y no superusuarios, tienen acceso de administrador a través de permisos asignados. Cada objeto editable a través de la interfaz de administrador tiene tres permisos: un permiso de creación, un permiso de edición y un permiso de eliminación para todos los modelos que ha creado.

El sitio de administración de Django utiliza un sistema de permisos que puede usar para dar a los usuarios específicos acceso solo a las partes de la interfaz que necesitan. Cuando crea un usuario, ese usuario no tiene permisos, y depende de usted otorgarle permisos específicos


Un superusuario tiene automáticamente todos los permisos ( has_perm devolverá True).

Un miembro del personal puede iniciar sesión en las páginas de administración.

Las páginas de administración son una interfaz simple para los modelos que configuraste para aparecer en ella. Solo muestra los modelos para los que el usuario actual tiene los permisos adecuados.

Entonces, si alguien es tanto superusuario como personal, pueden iniciar sesión en el sitio de administración y tener acceso completo a todos los modelos que se muestran en el sitio de administración.