Я новичок в CodeIgniter.
Я создал модель для стола Pizza и таблицы Ingredients. Столы объединены дополнительной таблицей Pizza_Ingredients (отношение многие ко многим).
Моя модель:
<?php
class Pizza extends DataMapper {
var $table = 'Pizza';
var $has_many =
array(
'ingredients' =>
array(
'class' => 'ingredients',
'join_table' => 'pizza_ingredients'
)
);
}
class Ingredients extends DataMapper {
var $table = 'Ingredients';
var $has_many =
array(
'pizza' =>
array(
'class' => 'pizza',
'join_table' => 'pizza_ingredients'
)
);
}
?>
Когда я получаю данные, используя этот код:
$pm = new Pizza();
$pm->include_related('ingredients');
$array = $pm->get();
я получаю массив, который дублирует значения пиццы (это похоже на результат запроса sql).
margherita | cheese
vegetariana | vegetable 1
vegetariana | vegetable 2
Я не могу просто сгенерировать html-таблицу в "foreach" для такого массива.
я хочу получить объект, который имеет такую структуру:
margherita:
- cheese
vegetariana:
- vegetable 1
- vegetable 2
это позволяет мне сделать цикл foreach (с пиццей) с другим циклом foreach (с ингредиентами) внутри «цикла пиццы».
Я должен написать это на PHP, или CodeIgniter/DataMapper может сделать для меня что-то еще?
Любой совет?