Laravel подзапрос с функцией для части коллекции - PullRequest
0 голосов
/ 30 апреля 2020

Я использую laravel -nestedset для построения, извлечения и отображения дерева. Эти деревья имеют отношение к другой таблице. Это отношение имеет hasMany для другой таблицы из-за того, как дерево хранится в базе данных.

Я хочу получить модель + дерево и получить доступ к функции 'toTree' (проверьте ссылку на github). для информации) в подзапросе.

Чтобы поместить выше gibberi sh в контекст:

$sports = Sport::with('templates')->whereHas('templates', function ($query) {
    $query->where('is_available', true);
})->get();

// Result
id: integer
name: string
templates: array[70]

Где шаблоны это отношение к дереву.

Без вытягивания любого Отношения, я могу сделать это:

$templates = AdviceTreeTemplate::where('is_available', true)->get()->toTree();

Результатом является 1 объект, который имеет атрибут children / parent, который позволяет вам l oop через этот объект и построить ваше дерево. Единственным недостатком является то, что я не получаю здесь модель Sport.

То, что я ищу, - это способ получения модели Sport с отношением templates, но это отношение имеет вид объект дерева вместо массива всех строк.

Любая помощь будет принята с благодарностью.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...