Я попытался сделать некоторые страницы видимыми только при входе в систему.
Я пробовал это с:
def backend(request):
if request.user.is_authenticated:
return render(request, 'web/backend-index.html')
else:
return redirect(reverse('web:login'))
а также с:
@login_required
def backend(request):
return render(request, 'web/backend-index.html')
Первый код не дает войти.
Второй код не позволяет мне войти в систему, но URL-адрес тоже меняется: http://127.0.0.1:8000/login/?next=/backend/
Если я просто визуализирую представление, не проверяя, вошел ли он в систему, вход в систему работает нормально, и я буду передан на внутреннюю страницу.
Весь код находится на github: https://github.com/psmaster1/BrainSystems/tree/master/smarthome/web
Я не получаю никаких сообщений об ошибках. Просто перенаправляет на страницу авторизации...
/login/
и т. д. Вы можете указать представление, на которое хотите перенаправить, в@login_required
, но вход не выполняется в этом представлении. - person Willem Van Onsem   schedule 17.05.2019