我的laravel应用程序的定位标记中包含以下代码:
I have the following code in my anchor tag in my laravel application:
<a href="{{ route('showQualityResult' , compact(Session::get('quality-data'))) }}">Submited Quality Check</a>单击上面的链接时,我的路线设置为运行以下方法:
My route is set to run the following method when clicked on the above link:
public function showQualityResult($qualityData) { return $qualityData; // return view('quality-result' , compact($qualityData)); }现在,当我单击链接时,出现以下错误:
Now when i click on the link, i get the following error:
当我明显将数据作为参数传递给标记时,为什么会出现Missing argument 1错误,如下所示:
Why am i getting a Missing argument 1 error when i clearly am passing data as a parameter in the tag like so below:
<a href="{{ route('showQualityResult' , compact(Session::get('quality-data'))) }}">Submited Quality Check</a>为什么参数没有传递给方法?
Why is the parameter not being passed to the method ?
推荐答案您上一个问题的路线:
Route::get('/showQualityResult', 'QualityCheckController@showQualityResult');要传递参数,您应该对其进行定义.因此,它看起来像这样:
To pass the parameter, you should define it. So, it'll look like this:
Route::get('showQualityResult/{data}', 'QualityCheckController@showQualityResult');并且showQualityResult()方法应该接受它:
public function showQualityResult($data) { ....我建议您阅读文档以了解其操作方式有效.
I'd recommend you to read the docs to understand how it works.
更多推荐
使用路由方法时,参数未传递到laravel中的控制器方法
发布评论