LaravelとEloquentクラスを使用しています。私は3つのモデルを持っています。
City.php:
public function itineraries() {
return $this->has_many('Itinerary', 'city_id');
}
Itinerary.php:
public function city()
return $this->belongs_to('City');
}
public function type()
{
return $this->belongs_to('Itinerarytype');
}
Itinerarytype.php:
public function itineraries()
{
return $this->has_many('Itinerary');
}
ご覧のとおり、都市には多くの旅程があり、旅程は都市と旅程タイプに属しています。itinerarytypeモデルには多くの旅程があります。
このwith()
メソッドを使用して、旅程タイプにグループ化された旅程の数を取得することは可能ですか?
たとえば、これまでに私が持っているものは次のとおりです。
$city = City::with(array('itineraries'))->where_slug($city_slug)->first();
これは、そのナメクジとそのすべての旅程を持っている都市を取得します。
次のようなリストを取得したいのですが(テキストは旅程タイプで、番号はカウントです)
History: 10 Entertainment: 5 Outdoor: 6 ...