view.pyJak ograniczyć widok tylko do superużytkownika?
@login_required
@permission_required('is_superuser')
def score_reset(request):
pass
url.py
url(r'^score-reset/$', score_reset, name='score-reset'),
Mam następujący kod i ku mojemu zdziwieniu nadal hit funkcję, mimo zalogowany z non administratora. Spodziewałem się, że odmówię zgody.
Czego mi brakuje?
btw, nie jestem oznakowanie to jako duplikat, ponieważ ani odpowiedzi Mam połączonej wspomnieć, że 'user_passes_test' jest istniejący dekorator Django, a także fakt, że' is_superuser 'nie jest zgodą. –
Pytanie wymaga ograniczenia tylko dla superużytkownika. Przykładowy kod powinien być @user_passes_test (lambda u: u.is_superuser) – mhost
Wykonanie 'user_passes_test' [powyższego fragmentu] wykonuje pracę. Ale możesz wziąć pod uwagę, że to przekieruje Cię na stronę logowania dla wszystkich nie-superużytkowników, nawet jeśli już się zalogowali. Może chcesz napisać własny dekorator, aby wykonać zadanie. – allsyed