Вы должны использовать login_required
как декоратор, см. Система аутентификации Django для более подробной информации.
Пример:
from django.contrib.auth.decorators import login_required
@login_required(login_url="/your/login/view/url/")
def my_view(request):
...
Избегайте использования промежуточного программного обеспечения для любого видаперенаправления всегда можно, в соответствии с документами
Промежуточное программное обеспечение - это структура хуков в обработке запросов / ответов Django.Это легкая низкоуровневая «плагинная» система для глобального изменения входных или выходных данных Django.
Другими словами, есть промежуточное программное обеспечение для обработки запросов и ответов, если вы перенаправляете на любое представление, вы будете(потенциально) рекурсивно активировать ваше промежуточное ПО.
И, с другой стороны ...
В будущем вы можете захотеть добавить представление, которое могут посещать анонимные пользователи, это промежуточное ПОбудет проблема ...