[pyar] Grupos y Permisos en Django

fisa fisadev en gmail.com
Lun Mar 14 13:49:34 ART 2016


Ahora, es bueno aclarar que no está muy bien chequear por pertenencia a
grupos. Lo correcto sería que crees un permiso, y chequees por ese permiso.
No es una cuestión de django, sino de manejo de permisos en general en
sistemas. Siempre conviene chequear por "puede hacer tal cosa?" antes que
chequear por "es tal rol?".

Si chequeás por ejemplo que sea del grupo X, y mañana ese grupo no puede
hacer más la acción, pero otro grupo sí, tenés que buscar tooodos los
lugares donde tu código preguntaba por si era de tal grupo, y cambiarlo por
preguntar si es del otro grupo.
Si en cambio chequeás por permisos, y mañana cambia el grupo que tiene
permiso para hacer eso, simplemente cambiás los permisos asignados a los
grupos en la db, sin tener que recorrer y cambiar nada de tu código.

En resumen: por lo general conviene asignar permisos y chequear por si
tiene o no permisos, antes que chequear por si es de tal o cual grupo. De
la segunda forma estás "hardcodeando" tu lógica del permiso en el código.

On Mon, Mar 14, 2016 at 1:43 PM fisa <fisadev en gmail.com> wrote:

> Podés armarte tu propio decorador, que funcione similar al
> permission_required, solo que chequeando el grupo. Algo como esto (basado
> en el código del permission_required):
> https://gist.github.com/fisadev/67a9a8fa7746f96d04cf
>
> Se usaría así:
>
> @group_required('nombre del grupo')
> def mi_vista(request, ...):
>     ...
>
> Saludos
>
> On Mon, Mar 14, 2016 at 11:59 AM Cristian Vazquez <
> cristianvazquez4 en gmail.com> wrote:
>
>> podés fijarte en
>> https://docs.djangoproject.com/en/1.9/topics/auth/default/#the-permission-required-decorator <-
>> esto permite poner permisos definidos. Yo lo que quiero es que si alguien
>> pertenece a un grupo pueda llamar la funcion, sino no pueda.
>>
>> El 14 de marzo de 2016, 11:52, Daniel<dmlistapython en gmail.com> escribió:
>>
>>> podés fijarte en
>>> https://docs.djangoproject.com/en/1.9/topics/auth/default/#the-permission-required-decorator
>>>
>>> El 14 de marzo de 2016, 11:36, Cristian Vazquez <
>>> cristianvazquez4 en gmail.com> escribió:
>>>
>>>> buenas, Como va?
>>>>
>>>> En Django 1.8, Se puede limitar que una funcion en una vista solo pueda
>>>> ser ejectuada por gente en determinados grupos?
>>>>
>>>> Muchas gracias por su atencion.
>>>>
>>>> --
>>>> Saludos.
>>>> Cristian
>>>>
>>>> _______________________________________________
>>>> pyar mailing list pyar en python.org.ar
>>>> http://listas.python.org.ar/listinfo/pyar
>>>>
>>>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>>
>>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>>> Argentina - http://www.usla.org.ar
>>>>
>>>
>>>
>>>
>>> --
>>> Daniel Malisani
>>>
>>> _______________________________________________
>>> pyar mailing list pyar en python.org.ar
>>> http://listas.python.org.ar/listinfo/pyar
>>>
>>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>
>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>> Argentina - http://www.usla.org.ar
>>>
>>
>>
>>
>> --
>> Saludos.
>> Cristian
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>
> --
> --
> fisa  -  Juan Pedro Fisanotti
>
-- 
--
fisa  -  Juan Pedro Fisanotti
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20160314/2b3a90e9/attachment.html>


Más información sobre la lista de distribución pyar