Sono in procinto di sviluppare un'applicazione web. Questa applicazione web è principalmente un'interfaccia CRUD, sebbene alcuni utenti possano eseguire solo alcune azioni e vedere solo alcune parti di viste.
Quale sarebbe un modo ragionevole per gestire le autorizzazioni degli utenti, dato che alcune parti di viste non sono disponibili per gli utenti? Stavo pensando di avere una funzione hasPermission(permission)
che restituisce true
se l'utente corrente ha il permesso dato, anche se richiederebbe condizionali attorno a tutte le parti di viste che sono visibili solo ad alcuni utenti. Ad esempio:
{% if has_permission('view_location') %}
{{ product.location }}
{% endif %}
Temo che questo diventerà un brutto e illeggibile pasticcio, specialmente dal momento che queste autorizzazioni possono diventare un po 'complicate.
In che modo questo problema viene risolto comunemente nelle applicazioni Web?
Sto prendendo in considerazione l'utilizzo di Haskell con Happstack o Python con Django.