【发布时间】:2016-09-08 07:14:12
【问题描述】:
我有一个 Hotel 模型,其中有许多可以占用的房间。我应该如何查询:
酒店列表
- 房间数
- 占用房间数
查询:
$hotels = Hotel::where('foo',$bar)
->withCount('rooms')
->withCount(['rooms' => function ($query) {
$query->where('status', 'Occupied');
}])
->get();
结果:
$hotel->rooms_count 给出了占用房间的数量,这是最后一个 withCount 表达式。
我想要得到什么
$hotel->rooms_count作为每家酒店的客房数$hotel->occupied_rooms_count作为每家酒店的客房数
作为第二个withcount的别名:
问题
有没有办法别名 Room 上的第二个 withCount?
【问题讨论】:
-
你可以简单地做一个 $hotel->occupied_rooms_count = $hotel->rooms_count
-
目前,ORM 不会生成这两个字段,因为它们具有相同的名称。 ORM 只产生一个计数。这不是一个简单的命名问题