2015年8月30日日曜日

Laravel標準の認証機能を利用していてハマる

Laravel標準の認証機能でユーザ追加やログインの処理が出来るのは分かったが、認証された状態では/homeにリダイレクトされてしまい困る。

ここにリダイレクトする輩は、
  • ¥Illuminate¥Foundation¥Auth¥RedirectsUsers@redirectPath
  • ¥Illuminate¥Foundation¥Auth¥ResetsPasswords@redirectPath
  • app¥Http¥Middleware¥RedirectIfAuthenticated@handle
のお三方である。

最初の二つは、ユーザ認証・登録やパスワードリセットの操作の時のみに発動するっぽいので、最後のが怪しい。で、このクラスを呼んでいるファイルを調べると、app¥Http¥Kernelであった。$routeMiddlewareという変数にこのクラスが設定されている。何のことかと言うと、

Laravel 5 の Global Middleware ではルートの名前がとれない?

なるほど、「特定のルートに割り当てる Middleware」のことのようだ。そして、その解釈からすると、このクラスは guestという特定のルートに割り当てられている様だ。

(続く)

0 件のコメント:

コメントを投稿