2016-12-16 60 views
1

时,控制器laravel方法,我有我的锚标记下面的代码在我laravel应用:参数没有传递中使用路由方法

<a href="{{ route('showQualityResult' , compact(Session::get('quality-data'))) }}">Submited Quality Check</a> 

我的路线设置为运行下面的方法在点击时上面的链接:

public function showQualityResult($qualityData) { 
     return $qualityData; 
     // return view('quality-result' , compact($qualityData)); 
    } 

现在,当我点击链接,我得到以下错误:

enter image description here

为什么我得到一个Missing argument 1错误,当我清楚我在标签传递数据作为参数,像这样如下:

<a href="{{ route('showQualityResult' , compact(Session::get('quality-data'))) }}">Submited Quality Check</a> 

为什么参数不被传递给方法?

+1

您需要发送的参数路线.. – Sona

回答

2

你从你前面的问题的路线:

Route::get('/showQualityResult', '[email protected]'); 

传递参数,你应该定义它。因此,它会是这样的:

Route::get('showQualityResult/{data}', '[email protected]'); 

而且showQualityResult()方法应该接受它:

public function showQualityResult($data) 
{ 
    .... 

我建议你阅读docs了解它是如何工作的。

+0

我有以下的路线设置现在'路线::得到(“showQualityResult/{}数据”,[ “作为” =>“showQualityResult”, “使用” =>'QualityCheckController @ showQualityResult' ]);' 现在我得到以下错误:http://imgur.com/gi02rgc。 –

+0

Route :: get('/ showQualityResult/{id}','QualityCheckController @ showQualityResult') - > where('id','[0-9] +'); – Sona