El usuario de Django get_all_permissions() está vacío mientras se establece user_permissions
django permissions (1)
Agregué algunos permisos a un usuario a través de la interfaz de administración.
Por alguna razón, todas las funciones permanentes fallan, por ejemplo
>>> user.get_all_permissions()
set([])
Pero accediendo directamente a la tabla, funciona:
>>> user.user_permissions.all()
(list of permissions as expected)
¿Qué puede causar que "get_all_permissions" (y todas las funciones permanentes como has_perm ()) falle?
Gracias
tenia el mismo problema Supongo que en algún momento ha utilizado un AUTHENTICATION_BACKEND hecho por usted mismo. La mayoría de los ejemplos en la red de esto (¡INCLUYENDO LA DOCUMENTACIÓN DE DJANGO 1.0!) No mencionan que los Backends son responsables del manejo de permisos también.
Sin embargo, no hay problema: en el archivo de fondo que reside su código, incluya esta importación:
from django.contrib.auth.backends import ModelBackend
Luego, asegúrese de que el Backend que escribió amplíe ModelBackend, por ejemplo:
class EmailBackend(ModelBackend):
Debería estar bien.