Как написать запрос для перечисления связанных моделей - PullRequest
1 голос
/ 29 мая 2020

У меня красноречивая модель и тип 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 вещь.

Я хочу знать, есть ли способ добиться этого без использования области и использования базовых c директив отношений.

Примечание: мне нужен только разбитый на страницы список модели Second. НЕ экземпляр модели First с привязанной нумерацией страниц seconds.

...