我正在使用Laravel 6.2。我有一个命名的路线
Route::get('/dummy/{id}', 'Api\V1\DummyDataController@show')->name('dummy_data_show');
我无法为此编写测试,但收到错误Illuminate\Routing\Exceptions\UrlGenerationException: Missing required parameters for [Route: dummy_data_show] [URI: api/v1/dummy/{id}].
这些是我的尝试(仅相关代码):
$request = $this->withHeaders(
[
'Accept' => 'application/json',
'Authorization' => 'Bearer '.$token,
]
)->json('GET',
Route('dummy_data_show'),
[
'id' => 1,
]
);
还有
$request = $this->withHeaders(
[
'Accept' => 'application/json',
'Authorization' => 'Bearer '.$token,
]
)->json('GET',
Route('dummy_data_show'),
1
);
当然,如果我尝试
$request = $this->withHeaders(
[
'Accept' => 'application/json',
'Authorization' => 'Bearer '.$token,
]
)->json('api/v1/dummy/1');
我没有得到错误。我怎么了谢谢!
答案 0 :(得分:3)
您没有将任何参数传递给route
方法。参数应在括号内。
更改:
Route('dummy_data_show'),
[
'id' => 1,
]
收件人:
route('dummy_data_show', [
'id' => 1,
])