laravel 登录后重定向到上一页

标签 laravel laravel-5 laravel-5.7

我有一个 View (URL:/equip-planner),其表单如下:

<form action="{{ url('equips') }}" method="POST" class="form-horizontal">
  {{ csrf_field() }}
  <input type="text" id="name" name="name" class="form-control-sm">
  <button type="submit" class="btn btn-primary btn-sm">
    <i class="fa fa-btn fa-plus">Create</i>
  </button>    
</form>

路线:

Route::get('/equip-planner', 'EquipmentController@ep')->name('equip-planner');
Route::resource('equips', 'EquipmentController');

Controller 构造函数:

public function __construct(){
        $this->middleware('auth', ['except' => ['index', 'show','create','home','ep']]);
    }

当我提交表单时,它首先会检查用户是否已登录,因为资源方法“store”未在 Controller 构造函数的 except 列表中列出。因此,如果用户未登录,他将被重定向到登录页面,这很好。

但是:成功登录后,用户将被重定向到/equips 而不是/equip-planner。我猜这是因为表单操作 ([...]action="{{ url('equips')}}[...])

有谁知道如何更改重定向,以便用户将被发送回/equip-planner? ……这还有可能吗?我认为必须再退一步,因为步骤是:/equip-planner ->/equips -> 登录 -> 返回之前的站点,即/equips ?

编辑:

我的App/Http/Middleware/RedirectIfAuthenticated.php内容:

public function handle($request, Closure $next, $guard = null)
{
  if (Auth::guard($guard)->check()) {
    return redirect()->intended('/home');
  }
  return $next($request);
}

最佳答案

使用

return redirect()->back()

如果您想发送消息,请使用with

关于laravel 登录后重定向到上一页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53407420/

相关文章:

php - Laravel 5.0 中放置用户相关功能的正确位置在哪里

php - Laravel 的所属关系不返回值

php - 如何在 Laravel 5 的 Blade 模板上显示错误消息

php - LARAVEL ELOQUENT - 我想将用户表中的列添加到关系表中

php - laravel 请求索引无法列出数组分类

php - 如何在 laravel 5.7 中测试 mongo 连接?

javascript - 在客户端 Laravel 中排序/过滤表的最喜欢的方式?

php - UnexpectedValueException 尝试安装 laravelcollective 时无法解析版本约束

php - Laravel 5 |违反完整性约束 : 1452

arrays - 在 Laravel 中验证数组时,如何添加带有数组项规则的验证自定义消息?