با سلام و احترام خدمت همه دوستان و اساتید محترم .
بنده سه مدل برای : کشورها ، استانها و تورها دارم که رابطه هاشون به این شکل هستش :
کشور با استانها > یک به چند
استان با تور > چند به چند
تورهایی که ثبت میکنم میتونه چندتا استان داشته باشه که تو این حالت ، اگر من یک کشور رو انتخاب کنم و بخوام از طریق استانهاش به تورها برسم ، توری که دوتا استان داره رو دوبار نمایش میشه.
حالا نمیدونم تو این نوع رابطه ها چطور از groupBy استفاده کنم !
کدم به این شکل هستش :
به این شکل هم نوشتم ولی باز جوابی نگرفتم :
ممنون میشم راهنماییم کنید که چطور این مشکل رو رفع کنم .
بنده سه مدل برای : کشورها ، استانها و تورها دارم که رابطه هاشون به این شکل هستش :
کشور با استانها > یک به چند
استان با تور > چند به چند
تورهایی که ثبت میکنم میتونه چندتا استان داشته باشه که تو این حالت ، اگر من یک کشور رو انتخاب کنم و بخوام از طریق استانهاش به تورها برسم ، توری که دوتا استان داره رو دوبار نمایش میشه.
حالا نمیدونم تو این نوع رابطه ها چطور از groupBy استفاده کنم !
کدم به این شکل هستش :
1 2 3 | $country = AppCountry::where( 'slug' , '=' , $slug )->where( 'type' , '=' , 1) ->with([ 'province.tours.tourlocation' , 'province.country' ])->first(); |
به این شکل هم نوشتم ولی باز جوابی نگرفتم :
1 2 3 4 5 | $country = AppCountry::where( 'slug' , '=' , $slug )->where( 'type' , '=' , 1) ->with([ 'province.tours' => function ( $query ){ $query ->groupBy( 'tours.id' ); }, 'province.tours.tourlocation' , 'province.country' ])->first(); |
ممنون میشم راهنماییم کنید که چطور این مشکل رو رفع کنم .