Dans mon application Django, j'ai certaines permissions dont les utilisateurs ont besoin pour accéder à certaines vues (en utilisant django.contrib.auth
). Cela fonctionne bien, en utilisant le décorateur @permission_required
sur mes fonctions d'affichage.Django: Application des autorisations dans le répartiteur d'URL?
Cependant, certains de mes URL résoudre à des vues que je n'ai pas écrit, comme le haut-django.contrib.auth.views.password_change
, comme dans les domaines suivants urls.py
:
urlpatterns = patterns(
(r'^$', "users.views.index"),
(r'^password_change/$', 'django.contrib.auth.views.password_change'))
Dans ce cas, je n'ai nulle part appliquer mon @permission_required
décorateur - ou est-ce que je le fais? Est-il possible d'appliquer une restriction d'autorisations au niveau du répartiteur d'URL?
Comment utiliseriez-vous 'permission_required' de la même manière? Plus précisément, comment passeriez-vous l'argument du nom d'autorisation? –
@Manoj: consultez cette section de la documentation: http://docs.djangoproject.com/fr/dev/topics/auth/#limiting-access-to-generic-views l'idée est d'écrire une enveloppe fine (avec permission_required decorator) autour de la vue générique, et pointez votre urlconf sur cette enveloppe ... – Hoff
C'est ce que j'ai fait dans ma réponse. Je voulais juste savoir s'il y avait un autre moyen de s'y prendre. Merci. –