### whereHas
app/Models/Order.php
public function product1(){ return $this->belongsTo('App\Models\Product', 'product_id1', 'id'); }
controller
$orders = Order::whereHas('product1', function($q){ $q->where('name', 'like', '%車%'); })->get(); dd($orders);
### orWhreHas
複数のbelongsToがある場合
app/Models/Order.php
public function product1(){ return $this->belongsTo('App\Models\Product', 'product_id1', 'id'); } public function product2(){ return $this->belongsTo('App\Models\Product', 'product_id2', 'id'); }
controller
$orders = Order::whereHas('product1', function($q){ $q->where('name', 'like', '%セット%'); })->orWhereHas('product2', function($q){ $q->where('name', 'like', '%セット%'); })->get(); dd($orders);
OK
で、本当にやりたいのは、whrehasを2階層にしたものをorWhreHasで回したい。できるのか。。。。