我有以下关联:Orders
belongsToSites
我执行以下查询:
$sites = $this->Sites->find('all')
->select(['id', 'name'])
->contain([
'Users' => function ($q) {
return $q->select(['id', 'owner_id', 'firstname', 'lastname']);
},
'Orders' => function ($q) {
return $q->where(['status >' => 0]);
},
'Orders.Agplans'
])
->matching('Users', function ($q) use($owner_id)
{
return $q->where([
'Users.owner_id' => $owner_id
]);
})
->all();
但是大多数网站都没有订单,所以我得到了一些结果:
(int) 100 => object(App\Model\Entity\Site) {
'id' => (int) 7966,
'name' => 'Site example',
'orders' => [],
'users' => [
(int) 0 => object(App\Model\Entity\User) {
...
是否可以在查询中指定我只想要不sites
为空的orders
?