Laravel Nova Metrics Partition属于ToMany关系

问题描述 投票:0回答:1

我有以下数据模型:

(出版)< - [belongsToMany] - >(订阅者)

我想创建一个Nova Partition Metric来显示每个出版物的订阅者数量。

我的Partition类的calculate方法如下所示:

public function calculate(Request $request) { return $this->count($request, Subscriber::with('publications'), 'publication.id'); }

但我得到一个“未知列”错误。有谁知道如何使这项工作?

laravel metrics laravel-nova
1个回答
0
投票

计数助手只允许按模型表上的列进行分组。它也不允许连接表。

如果您想要一个更复杂的查询,在另一个表中使用连接和逐个列,您可以构建自己的结果数组并使用结果助手返回它。

您可以在此处查看结果助手文档:https://nova.laravel.com/docs/1.0/metrics/defining-metrics.html#customizing-partition-colors

您应该在calculate函数内创建数组(您可以在此处使用eloquent或query builder),然后使用结果助手返回该数组。

希望这可以帮助!

© www.soinside.com 2019 - 2024. All rights reserved.