嘿,我是一个真正的新手,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);
}
试试这个:
public function getProductFamily($id)
{
$productfamily = ProductFamilyModel::where('id', $id)->first();
$products = ProductModel::where('product_family_id', $productfamily->id)->get();
return view('product_page', compact('productfamily', 'products'));
}