ここでは、ログインページを作成するための手順を説明しました。それは働いている。しかし、私はリダイレクトの動的な作成に問題があります。私が意味することは、ユーザーの役割(既に定義したカスタムモデル)に基づいて、ユーザーを別のURLにリダイレクトしたいということです。ログイン後の動的リダイレクトがLaravel 5.1で機能していない
use AuthenticatesAndRegistersUsers, ThrottlesLogins;
private $redirectTo = '/test';
public function __construct()
{
$this->middleware('guest', ['except' => 'getLogout']);
$this->redirectTo = '/dashboard';
$user = \Auth::user();
if (($user->admin()) {
// an admin
$this->redirectTo = '/admin';
} else {
// it's a client
$this->redirectTo = '/client/dashboard';
}
}
protected function validator(array $data)
{
return Validator::make($data, [
'name' => 'required|max:255',
'email' => 'required|email|max:255|unique:users',
'password' => 'required|confirmed|min:6',
]);
}
しかし、それはまだ/home
にみんなをリダイレクトします。ここでは
は私AuthController
(私は定型文を削除した)のです。私はdd($this->redirectTo)
を持っており、期待値を示しています。
ユーザーが認証された後にリダイレクトパスを動的に設定するにはどうすればよいですか?
Laravel 5.4に関する最新の回答があります。https://stackoverflow.com/a/45529876/3200896 – plexus