Djangoのlogin_reqiredを404errorじゃなくて他のページにリダイレクトする方法
目標
Djangoのlogin_requiredデコレーターはDjangoユーザーに高頻度で使われますね。 これをつけただけだと、404エラーを返してそんなページないよという表示になるだけです。 これを例えばログインページとか会員登録ページに飛ばすように設定する方法です。
復習
基本機能は、こんな感じ
例えば
#views.py @login_required def some_page(): ・・・(操作)・・・
とすれば下記のview関数はログインしている会員には見せる。ログインしていない名無しには見せないで404エラーを返す。という設定になります。
飛ばす先を変える
飛ばす先を変える。例えばログインページのURLが http://・・・・/accounts/login/ だとしたら 例えば
#views.py @login_required(login_url="/accounts/login/") def some_page(): ・・・(操作)・・・
と、記載するだけで飛ばす先が調整できます。お手軽・便利でDjangoサイコーですね!