我正在尝试使用他的最后一个价格(最后一个created_at
的价格)获得产品
我有:
product
表:
id, name,created_at, updated_at
product_prices
表:
id, product_id, price, created_at, updated_at
在Product
模型中:
public function prices()
{
return $this->hasMany('App\Product_price' , 'product_id', 'id');
}
在Product_price
模型中:
public function product()
{
return $this->belongsTo('App\Product' , 'product_id');
}
在ProductController.php
上:
public function GetALlProducts()
{
$products = new Product;
$products = $products->with('prices');
$products = $products->get();
return response()->json($products);
}
我收到了所有价格都差不多的产品,我不想要这个。
答案 0 :(得分:1)
您可以向您的Product
模型添加另一个关系,即:
public function last_price()
{
return $this->hasOne('App\Product_price')->latest();
}
然后,您可以用您的last_price
迅速加载$products
,即:
$products = Product::with('last_price')->get();