使用route方法时,参数未传递给laravel中的控制器方法

时间:2016-12-16 18:29:53

标签: php laravel laravel-5

我的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 个答案:

答案 0 :(得分:2)

您之前提问的路线:

Route::get('showQualityResult/{data}', 'QualityCheckController@showQualityResult');

要传递参数,您应该定义它。所以,它看起来像这样:

showQualityResult()

并且public function showQualityResult($data) { .... 方法应该接受它:

AppSettings

我建议您阅读docs以了解其工作原理。