我有一个雄辩的模型和 graphql 类型First
。我有一个雄辩的模型和 graphql 类型Second
。他们之间有belongsToMany
关系,firsts
并且seconds
。
我想写一个查询,给定一个id
模型First
,我应该能够返回它的seconds
关系列表。
目前我正在通过这样做来实现这一目标。询问
firstSeconds(id: ID!): [Second!]! @paginate(scopes: ["secondsByFirstId"])
第二个模型
public function scopeSecondsByFirstId($query, $args)
{
if (empty($args['id'])) {
return $query;
}
$firstId = $args['id'];
$first = First::find($firstId);
$secondIds = $first->seconds()
->get()
->pluck('id');
return $query->whereIn('id', $secondIds);
}
注意:return $first->seconds()
对我不起作用,但这是 laravel 的事情。
我想知道是否有一种方法可以在不使用范围和使用基本关系指令的情况下实现这一目标。
注意:我只想要模型的分页列表Second
。不是附加First
分页关系的模型实例。seconds