laravel 计算ModelCollection的所有withCounts的总和

3npbholx  于 2023-05-01  发布在  其他
关注(0)|答案(1)|浏览(91)

我有Model A的ModelCollection。模型A与模型BoneToMany关系。在我的查询中,我想知道模型A与B有多少关系。我用countWith()解决了这个问题。我用countWith()来解决这个问题。
我目前的问题是,我还想将所有单个关系的总和添加到ModelCollection中。我该怎么做?
预期React:

items: array: 3 [
  {
  0 => Model A
    attributes: array: 15 [ 
       ...
       modelB_count: 3
    ]
  }, 
  {
  1 => model A
    attributes: array: 15 [ 
       ...
       modelB_count: 1
    ]
  }
]
perPage: 25
...
total: 2
totalAllModel_B_Relations: 4 // It is the sum from 3 + 1

我该怎么做?

wfveoks0

wfveoks01#

我猜你有分页的回复。

$data = \App\Models\Country::withCount('states')->paginate();
        
$array['data'] = $data;
$array['sum'] = $data->sum('states_count');

return $array;

相关问题