Разрешить доступ к странице только для пользователя-администратора Django

Итак, мне нужно разрешить доступ к странице только для пользователя admin в Django, я пытаюсь использовать этот кусок кода в app views.py, но он не работает хорошо...

from django.shortcuts import redirect

def index(request):
    if not request.user.is_superuser:
        return redirect('https://xx.com')
    return render(request, 'scan_debug/index.html')

Вы можете использовать декоратор user_passes_test:

Тогда вы можете создать метод admin_check следующим образом:

def admin_check(user):
   return user.is_superuser

Передайте метод admin_check декоратору следующим образом:

@user_passes_test(admin_check)
def my_view(request):
    ...

Спасибо за это, у меня была проблема с кэшированием... Мне просто нужно было перезапустить сервер

Вернуться на верх