Есть страница просмотра конкретного элемента.
Есть страница списка этих элементов.
Задача: получить несколько связанных записей из другой таблицы.
Для конкретного элемента мы можем написать отдельный запрос/метод, который принимает id этого элемента и выцепить необходимые данные.
Но что делать, когда эти же данные нужны на странице списка элементов?
То есть, у каждого элемента есть связанные с ним записи из другой таблицы. Здесь мы не привязываемся к конкретному id. Здесь получаем просто все элементы.
И как вложить внутрь каждого элемента массива записи из другой таблицы?
Array
(
[0] => Array
(
[id] => 17
[name] => Киевская Русь
// чтобы выглядело примерно так
[elements] => [
[field1] => 'field1'
[field1] => 'field1'
]
)
[1] => Array
(
[id] => 19
[name] => Скандинавия
)
[2] => Array
(
[id] => 11
[name] => СССР
)
[3] => Array
(
[id] => 15
[name] => СССР 1
)
[4] => Array
(
[id] => 18
[name] => Тест
)
)
UPD:
1. Я могу сделать GROUP_CONCAT и все вернется в строке с каким-то разделителем. Далее explode. Но этот вариант, как мне кажется, не оптимальный.
2. Можно сделать отдельный запрос на получение данных из второй таблицы и потом их смаппить в цикле перед выводом. Тоже, как показалось, вариант не оптимальный.