Привет, я действительно новичок в Laravel, и у меня возникли проблемы с получением связанных данных из моей базы данных. В настоящее время у меня есть несколько таблиц, относящихся к общей таблице семейства продуктов. В настоящее время у меня есть семейство продуктов, и я пытаюсь получить коды продуктов в этом семействе. Проблема в том, что я возвращаю только один товар, а не коллекцию. Я знаю, что неправильно понимаю информацию и застрял. Мой контроллер в настоящее время выглядит так:
public function getProductFamily($id)
{
$productfamily = ProductFamilyModel::where('id', $id)->first();
$productskus = ProductModel::where('product_family_id', $id)->get();
foreach ($productskus as $products){
$products->product_family()->get();
}
return view('product_page', compact('productfamily', 'products'));
}
У меня есть настройки моделей для обоих семейств продуктов:
public function product()
{
// return $this->hasMany(ProductModel::class, 'product_family_id');
return $this->hasMany(ProductModel::class, 'product_family_products', 'product_family_id', 'product_guid');
}
Продукт:
public function product_family()
{
return $this->belongsToMany(ProductFamilyModel::class, 'product_family_products', 'product_guid', 'product_family_id');
// return $this->belongsTo(ProductFamilyModel::class);
}