Разница между staff_member_required и user_passes_test - PullRequest
0 голосов
/ 30 апреля 2020

У меня есть сомнения по поводу использования этих двух декораторов. В моем проекте есть представление, в котором я разрешаю доступ только сотруднику. Это ограниченная область, в которой сотрудники могут создавать сообщения или вносить изменения в профиль пользователя. Эта область является областью администратора моего веб-сайта, но не является администратором по умолчанию django. Я создал внутреннюю область, в которой не используется django сайт администратора.

У меня есть это представление:

РЕЖИМ 1

from django.contrib.admin.views.decorators import staff_member_required

@staff_member_required(login_url='login')
def staff_site(request):
    some code here

РЕЖИМ 2

from django.contrib.auth.decorators import user_passes_test

@user_passes_test(lambda u:u.is_staff, login_url='login')
def staff_site(request):
    some code here

Какой правильный путь я должен использовать для своей цели?

...