lundi 2 novembre 2020

Eloquent max value of child's child

I have 3 tables

auctions [id, winner_user_id, title]
bids [id, auction_id, amount, user_id]
users [id, name]

relations

Auction
...
public function winningBidder(){
   return $this->belongsTo('User', 'winner_user_id', 'id');
}
public function bids(){
   return $this->hasMany('Bid');
}
User
...
public function bids(){
   return $this->hasMany('Bid');
}
Bid
...
public function auction(){
   return $this->belongsTo('Auction');
}
public function user(){
   return $this->belongsTo('User');
}

What i am trying to do is the highest bid for the winner

eager load
$auctions = Auction::with('winningBidder.bids')->get();

loads all bids instead of bids of that auction and adding max(amount) to about will give max of all

is it possible to get highest bid of winning user for each auction?



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire