Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Добрый день.
Никак не получается переадресовать пользователя после регистрации.
(Laravel 7)
В LoginController.php заменил:
RouteServiceProvider::HOME;
на
/* redirect to the previous page */
protected function redirectTo()
{
return url()->previous();
}
и в RedirectIfAuthenticated.php
if (Auth::guard($guard)->check()) {
return redirect()->intended();
}
return $next($request);
не помогает ((
Подскажите, кто сталкивался
Не в сети
intended() именно то, что нужно. если не работает, в отладчике проверь присуствует ли ключ url.intended в сессии.
по идее, мидлварь которая проверяет авторизацию пользователя, сохраняет там адрес назначения.
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
Не в сети
Спасибо, разбираюсь..
Не в сети
Спасибо, разбираюсь..
Я не знаю насколько это криво , так как делал это давно , но это все работает . После авторизации пользователь перенаправляется на страницу из которой делал вход. Этот код в LoginController . Ну и естественно в нужном месте добавлял в сессию user_url . Наскольлко это криво я не знаю , уже предупреждал.
protected function redirectTo()
{
if(session()->get('user_url')){
return url(session()->get('user_url'));
session()->pull('user_url');
}
else
{
return url('home');
}
}
Изменено DzonyBB (16.10.2020 10:36:01)
Не в сети
@DzonnyBB, сорри за возможно глупы вопрос.
а как добавить в сессию user_url?
Не в сети
@DzonnyBB, сорри за возможно глупы вопрос. а как добавить в сессию user_url?
Глупых вопросов не бывает.
Как то так,
session()->put('user_url',$request->segment(1));
Не в сети
Спасибо )) разбираюсь
Не в сети
Спасибо )) разбираюсь
Примерно так
use Illuminate\Http\Request;
public function моя функция(Request $request)
{
session()->put('user_url',$request->segment(1));
}//End function
Не в сети