如何在laravel中传递路由名称中的变量?

时间:2017-08-18 08:49:18

标签: php laravel

我已经定义了路线

Route::get('/edit-industry/{id}', 'Industries@edit')->name('admin.editIndustry');

通过

传递变量
{{ route('admin.editIndustry', ['id'=>1]) }}

OR

{{ route('admin.editIndustry', [1]) }}

这不起作用。如何在这里传递变量?

7 个答案:

答案 0 :(得分:10)

哇,为什么错误的答案(或者在这种情况下没有提出的问题的答案)被投票?

EkinOf是正确的,你可以做到

 handleClick() {
     this.setState(function (prevState, props) {
         return {
             show: !prevState.show
         };
     });
 }

顺便说一句,如果你有超过1个参数

,你的第一个也可以工作
{{ route('admin.editIndustry', 1) }}

答案 1 :(得分:6)

如果您只有一个参数,则可以这样做:

{{ route('admin.editIndustry', 1) }}

答案 2 :(得分:2)

只需尝试这样

查看

{{URL::to('/edit-industry/1')}}

<强>路线

Route::get('/edit-industry/{id}', 'Industries@edit')

<强>控制器

public function edit($id){
    // use $id here
}

希望你明白。

答案 3 :(得分:2)

传递单个参数:

##Defining Route:##
Route::get('edit-industry/{id}', ['as' => 'admin.editIndustry', 'uses' => 'Industries@edit']);

##Calling Route:##
{{ route('admin.editIndustry',[$id]) }}

传递多个参数:

##Defining Route:##
Route::get('edit-industry/{id}/{step}', ['as' => 'admin.editIndustry', 'uses' => 'Industries@edit']);

##Calling Route:##
{{ route('admin.editIndustry',[$id, $step]) }}

答案 4 :(得分:0)

您可以直接传递路线名称

{{ URL::to('/edit-industry/1') }}

答案 5 :(得分:0)

使用generating URLs from Named Routes route()

{{ route('admin.editIndustry', 1) }}

使用URLs url():

{{url('/edit-industry', [1])}}

答案 6 :(得分:0)

尝试一下,它可以和我一起工作。

您认为:

{{ route('admin.editIndustry', $id=1) }}

在您的路线上:

Route::post('admin/editIndustry/{id}', 'adminController@edit')-name('admin.editIndustry');