【问题标题】:How to pass parameter through href in laravel?如何在laravel中通过href传递参数?
【发布时间】:2019-04-21 21:25:52
【问题描述】:

我想将参数从 href 传递到 laravel 中的控制器。下面是我这样做的方式。但它正在生成页面未找到。请有人帮助我解决这个问题。 这是我的代码文件:

路线:

    Route::get('projects/showall', 'ProjectsController@showall')->name('projects.showall');

控制器:

public function showall($role){

    if($role == 'admin'){
            dump('hello');
    }
    else{
        dump('hello');
    }
}

(刀片)查看文件:

  <a class="dropdown-item" href="{{route('projects.showall',['role'=> 'admin'])}}"> </i>All Companies</a>

【问题讨论】:

    标签: laravel


    【解决方案1】:

    路线:

    Route::get('projects/showall/{role}', 'ProjectsController@showall')->name('projects.showall');
    

    控制器:

    use Illuminate\Http\Request;
    
    
    public function showall(Request $request,$role){
    
        if($role == 'admin'){
                dump('hello');
        }
        else{
            dump('hello');
        }
    }
    

    查看:

     <a class="dropdown-item" href="{{route('projects.showall',['role'=> 'admin'])}}"> </i>All Companies</a>
    

    【讨论】:

      【解决方案2】:

      这是因为您的路线不接受参数。看看这个https://laravel.com/docs/5.7/routing#route-parameters

      根据文档,如果你想传递一个值,你可以在路由中定义一个参数。像这样:

      Route::get('projects/showall/{role}', 'ProjectsController@showall')->name('projects.showall');
      

      并在控制器上调用它:

      public function showall(Request $request){
      
          if($request->role == 'admin'){
                  dump('hello');
          }
          else{
              dump('hello');
          }
      }
      

      【讨论】:

        猜你喜欢
        • 2018-05-21
        • 2017-05-27
        • 1970-01-01
        • 2020-05-21
        • 2012-07-31
        • 1970-01-01
        • 2020-07-08
        • 2011-07-29
        • 1970-01-01
        相关资源
        最近更新 更多