Php 缺少路线资源显示所需的参数
我将两个参数传递给letters.show route。一个是区域设置,另一个是id 缺少[Route:letters.show][URI:{language}/letters/{letter}]所需的参数。(视图:C:\xampp\htdocs\dstts\resources\views\inc\layout.blade.php) 当存在所有必需的参数时,将显示此错误 我的web.php文件Php 缺少路线资源显示所需的参数,php,laravel,localization,Php,Laravel,Localization,我将两个参数传递给letters.show route。一个是区域设置,另一个是id 缺少[Route:letters.show][URI:{language}/letters/{letter}]所需的参数。(视图:C:\xampp\htdocs\dstts\resources\views\inc\layout.blade.php) 当存在所有必需的参数时,将显示此错误 我的web.php文件 Route::group(['prefix' => '{language}'], functio
Route::group(['prefix' => '{language}'], function () {
Route::get('/', function () {
return view('welcome');
})->name('welcome');
Auth::routes();
Route::get('/home', 'HomeController@index')->name('home');
Route::resource('letters', 'LettersController')->middleware('auth');
});
字母控制器显示方法
public function show($lang, $id)
{
$letter = Letter::find($id);
return view('letters.show')->with('letter', $letter);
}
我的信件。我放置信件的索引页显示按钮
<a class="btn bg-green btn-block btn-xs waves-effect" href="{{ route('letters.show', [app()->getLocale(), $letter->id]) }}"></a>
当我单击浏览器地址栏中的“显示”按钮时,它会显示正确的地址:
我在这里遗漏了什么?一切正常,代码中没有任何错误
尝试检查
$letter->id
是否为null
,或者您可以使用任何现有模型通过替代$letter->id
进行测试,如果工作正常,那么$letter->id
为什么url中有任务
?应该是字母
你错发了url,可能是我在问题中提到了错误的url。反正还是不行($letter->id不为null。即使它为null,也应该没有任何问题。因为我以前查看过null记录。所有这些路由都运行良好,直到我将我的分支与另一个分支合并。不知道发生了什么。但此问题只发生在需要第二个参数的路由中。letters.index运行良好。