Django is_staff permiso decorador

Estoy tratando de limitar el acceso a las páginas con 2 niveles de usuario. Superusuario y administrador. Superusuario es un usuario habitual de Django con 'is_superuser' asignado. El usuario administrador también es un usuario normal con solo el permiso 'is_staff' asignado.

El problema es que cuando uso este decorador para un usuario administrador, no pasa la prueba:

@permission_required('is_staff')
def my_view(....)

@permission_required('is_staff') devuelve falso para usuarios anónimos. (correcto
@permission_required('is_superuser') solo devuelve verdadero para los superusuarios (correcto)
@permission_required('is_staff') devuelve FALSE para usuarios con la permanente 'is_staff' asignada. (incorrecto)

¿Alguna idea

Respuestas a la pregunta(3)

Su respuesta a la pregunta