首页 > 解决方案 > Laravel 访问路由 web.php 文件中的路由参数

问题描述

参数张贴成some_name这样: {{ route('some_name', $id = '1'}} 如何在if条件下访问它?

Route::group(['prefix' => '/'], function()
{
    if ( condition )
    {
        Route::get('/route/{id}', 'ControllerA@methodA')->name('some_name');
    } else{
        Route::get('/route{id}', 'ControllerB@methodB')->name('some_name');;
    }
});

如何使用中的{id}参数if (condition)?我试过了

Route::group(['prefix' => '/'], function($id)
    {
        if ( $id == 1)

它不工作。

标签: phplaravellaravel-5laravel-routinglaravel-5.6

解决方案


我认为你能做的最好的事情是中间件,例如:

public function handle($request, Closure $next)
{
    if ($request->id == 'some_value') {
        redirect action('ControllerA@methodA');
    }
    else {
      redirect action('ControllerB@methodB');
    }

    return $next($request);
}

推荐阅读