【发布时间】:2021-02-04 14:56:46
【问题描述】:
我将两个参数传递给 letters.show 路由。一个是语言环境,另一个是 id。
缺少 [Route: letters.show] [URI: {language}/letters/{letter}] 的必需参数。 (查看:C:\xampp\htdocs\dstts\resources\views\inc\layout.blade.php)
当有所有必需的参数时显示此错误。
我的 web.php 文件
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);
}
我的 letters.index 页面,其中我放置了字母显示按钮
<a class="btn bg-green btn-block btn-xs waves-effect" href="{{ route('letters.show', [app()->getLocale(), $letter->id]) }}"></a>
当我点击浏览器地址栏中的显示按钮时,它会显示正确的地址:http://dstts.site/en/tasks/1
我在这里缺少什么?
【问题讨论】:
-
为什么你的网址中有
tasks?应该是letters -
你的网址拼错了,应该是dstts.site/en/letters/1
-
我在问题中提到了错误的网址。无论如何dstts.site/en/letters/1 仍然无法正常工作。 :(
标签: php laravel localization