【发布时间】:2020-08-13 15:48:03
【问题描述】:
使用Laravel 7.x 和Postgresql。我有一个User 类和GroupPivot 数据透视表,可以对多个模型进行分组。如果用户有一个针对该组的当前数据透视条目,我想在 User 类之外创建一个具有 true 或 false 的列。这样我就可以列出所有用户并知道他们是在组内还是组外。
我的查询:
User::addSelect([
'in_group' => GroupPivot::whereColumn('groups_pivot.pivot_id', 'users.id')
->where('groups_pivot.group_id', $group->id)
->where('groups_pivot.model', User::class)
->count()
])->get();
我被困了一段时间:
SQLSTATE[42P01]: Undefined table: 7 ERROR: missing FROM-clause entry for table "users" LINE 1: ... "groups_pivot" where "groups_pivot"."pivot_id" = "users"."i... ^ (SQL: select count(*) as aggregate from "groups_pivot" where "groups_pivot"."pivot_id" = "users"."id" and "groups_pivot"."model" = App\Models\User)
我错过了什么?谢谢。
【问题讨论】:
-
如何使用
withCount('mapped_property') -
抱歉 M Khalid Junaid 我没有关注。你怎么建议?
标签: laravel postgresql