【发布时间】:2020-01-07 04:31:33
【问题描述】:
在我的 Laravel 本地化项目中,我制作了中间件、路由组和所有参数,语言切换工作正常,但是当我点击发送 id 时
<a href="{{ route('products', [app()->getLocale(), $category->id]) }}" class=""></a>
我得到错误:
缺少 [Route: products] [URI: {lang}/products/{id}]
我的路线:
Route::group(['prefix' => '{lang}'], function () {
Route::get('/', 'AppController@index')->name('home');
Route::get('/categories', 'AppController@categories')->name('categories');
Route::get('products/{id}', 'AppController@products')->name('products');
Auth::routes();
});
我的中间件:
public function handle($request, Closure $next)
{
\App::setLocale($request->lang);
return $next($request);
}
我的 AppController:
public function products($id)
{
$products = Category::with('products')->where('id', $id)->get();
return view('products', compact('products'));
}
这是网址:
http://127.0.0.1:8000/fa/products/1
如果我手动更改上述 URL,它会起作用并显示页面:
http://127.0.0.1:8000/1/products/1
但是如果我点击:
<a href="{{ route('products', [app()->getLocale(), $category->id]) }}" class=""></a>
我收到错误消息。
【问题讨论】:
标签: laravel localization