Django (Как запретить пользователям прямой доступ к URL-адресам в main_app/urls.py, если пользователь вышел из системы и user.is_authenticated = FALSE
Джанго
Как запретить пользователям прямой доступ к URL-адресам в main_app/urls.py, если пользователь вышел из системы и user.is_authenticated = FALSE
Обратите внимание, что я использовал представления на основе классов в views.py. Условие, если request.user.is_authenticated(): не работает. Увидеть ниже:
class EmployeeCreate(CreateView):
model = Employee
fields = ['first_name', 'last_name', 'role']
def post(self, request, *args, **kwargs):
if request.user.is_authenticated():
if "cancel" in request.POST:
return HttpResponseRedirect(reverse('main_app:index'))
elif "another" in request.POST:
return HttpResponseRedirect(reverse('main_app:employee-add'))
else:
return super(EmployeeCreate, self).post(request, *args, **kwargs)
1 ответ
Класс LoginRequiredMixin решил проблему https://docs.djangoproject.com/en/2.0/topics/auth/default/