Я создал администратору возможность создавать несколько категорий по подкатегориям. Теперь я хочу показать каждый продукт, присвоенный категории.Отдельные продукты в разных подкатегориях на странице с Laravel
Проблема в том, что каждая под-подгруппа показывает тот же продукт. Скорее всего, проблема лежит в базе данных и способ их хранения, но я не уверен, где именно
До сих пор это мой контроллер
public function showCategoryInfo($subcatId) {
$dual = DualSubCategories::where('sub_cat_id', '=', $subcatId)->get();
$dual_products = DualSubCategories::with('products')->findOrFail($subcatId);
$subcat1 = SubCategories::with('products')->findOrFail($subcatId);
return View::make('site.single_subcategory', [
'dual' => $dual,
'dual_products' => $dual_products
]);
}
Это мой взгляд
@foreach($dual as $dual_info)
<h3>{{ $dual_info['dual_sub_cat_name'] }}</h3>
<div class="row">
<div class="table-responsive">
<table class="table table-bordered">
<tbody>
@foreach($dual_products->products as $i => $product)
<tr>
<td>{{ $product['title'] }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@endforeach
Этот это то, что у меня есть в моей модели
public function subcategory()
{
return $this->belongsTo('SubCategories', 'sub_cat_id');
}
public function products()
{
return $this->hasMany('Product', 'dual_sub_cat_id');
}
таблицы выглядит следующим образом
// dual_category
dual_sub_cat_id sub_cat_id dual_sub_cat_name
1 1 test 1
2 1 test 2
// sub_category
sub_cat_id sub_cat_name
1 name 1
// products
product_id sub_cat_id dual_sub_cat_id
1 1 1
2 1 2
Из таблицы products
У меня есть 2 модели же подкатегорию, и когда я открываю подкатегорию с sub_cat_id = 1 Я хочу видеть на странице
test 1
product_id 1
test 2
product_id 2
Но я вижу
test 1
product_id 1
test 2
product_id 1
UPDATE с моделями DualSubCategories Модель
public function subcategory()
{
return $this->belongsTo('SubCategories', 'sub_cat_id');
}
public function products()
{
return $this->hasMany('Product', 'dual_sub_cat_id');
}
Подкатегории Модель
public function category()
{
return $this->belongsTo('Category', 'category_id');
}
public function products()
{
return $this->hasMany('Product', 'sub_cat_id');
}
Продукты Модель
public function categories()
{
return $this->hasMany('Categories', 'category_id');
}
Как данные извлекаются из базы данных? –
Я обновил свой вопрос с частями моделей, которые я использую –