0
我已经在我的控制器添加类别名称,而不是在Laravel ID在URL 4.2
public function showSubCats($categoryId) {
$subcats = DB::table('sub_category as sc')
->leftJoin('products as p', 'p.sub_cat_id', '=', 'sc.sub_cat_id')
->where('sc.category_id', '=', $categoryId)
->whereNotNull('p.sub_cat_id')
->select('p.*','sc.*', DB::raw('sc.sub_cat_id AS sub_cat_id'))
->groupBy('sc.sub_cat_id')
->get();
return View::make('site.subcategory', [
'subcats' => $subcats
]);
}
这在路由器
Route::get('/category/{categoryId}', ['uses' => '[email protected]']);
而且按钮
<a href="{{ URL::to('/category/' . $category->category_id) }}">View More</a>
目前以下功能该网址看起来像 - http://example.com/category/1其中1是ID。我想显示名称。
我可以轻松地做类似
Route::get('/category/{categoryId}/{name}', ['uses' => '[email protected]']);
按钮
<a href="{{ URL::to('/category/' . $category->category_id.'/'.$category->category_name) }}">View More</a>
但ID将仍然存在。我不能仅传递类别的名称,因为如果您检查上述查询,我需要该ID,因为我通过ID连接表。
任何想法我该怎么做?
Laravel 4.2版
感谢您的答案。那就是我要问的 - 如果名字不是唯一的,会发生什么?通常会..但是有可能有同名的类别或子类别。 – VLS
其实,在你的查询中,我不确定它是否真的会成为问题,因为我不知道你的查询的结果是什么。你想显示一个类别的子类别? – piscator
在这个函数中还有另一个小的查询,这与此无关,我已经删除它来缩短一些问题。底线是我需要通过ID。是的,我展示了仅分配给此类别的类别和产品的子类别。 – VLS