Django、認証されていないすべてのユーザーをランディングページにリダイレクトする 質問する

Django、認証されていないすべてのユーザーをランディングページにリダイレクトする 質問する

多数の URL とビューを持つ Django Web サイトがあります。認証されていないすべてのユーザーを特定のランディング ページにリダイレクトするように要求しました。そのため、すべてのビューでuser.is_authenticated()新しいランディング ページのセットをチェックして、そのページに戻る必要があります。

views.pyそんなにいじらずに、きれいな方法でできるでしょうかurls.py

ベストアンサー1

これを行うにはもっと簡単な方法があります。@login_requiredに「login_url」パラメータを追加するだけで、ユーザーがログインしていない場合はログインページにリダイレクトされます。ここ

from django.contrib.auth.decorators import login_required

@login_required(login_url='/accounts/login/')
def my_view(request):
    ...

おすすめ記事