Handeling M-N Отношения в Zend Framework 2

С бета4 и последней бета5 реализация DB-Feature-реализации, похоже, почти закончена. Есть пара учебных пособий, как обрабатывать одну базу данных с использованием шаблона TableGateway, но, похоже, нет ни одного для обработки M-N-отношений.

В ZF1 у нас былоfindDependantRowset() на TableGateway, который был отчасти грязным, поскольку это был просто второй запрос к базе данных, который в большинстве случаев не всегда необходим.

В ZF2 я ожидал, что найдется способ получить хорошее соединение Joins с указанными моделями, но я ничего не могу найти в коде. Может быть, я слепой, может, на самом деле ничего подобного нет.

Кому-нибудь из вас удавалось обрабатывать соединения и модели вместе в ZF2? Если это так, пожалуйста, будьте так любезны, чтобы научить меня, как это сделать, дать подсказку к конкретным пунктам документации или связать блог с тем, кто это сделал.

Заранее спасибо, ребята!

 Sam11 июл. 2012 г., 19:41
Не решено, но в чате # zftalk.2 на freenode намекнули, что вы перейдете к пользовательским запросам и сопоставите их с соответствующими моделями самостоятельно или используете ORM, такой как Doctrine 2. Тем не менее, если у кого-то есть работающее решение, я буду с удовольствием приму ваш ответ;)

Ответы на вопрос(1)

Решение Вопроса

Очевидное решение, если вам нужно общее решение, - это использовать Doctrine ORM или Propel.

Если вы хотите использовать Zend \ Db, то в классах шлюза вашей конкретной таблицы вы должны написать специальный метод, который извлекает правильные строки из связанной таблицы. Таким образом, вы можете убедиться, что SQL оптимизирован для нужного вам запроса.

 12 июл. 2012 г., 19:39
Да, я думал, что я отвечу на это здесь, так что это записано для людей, которые находят этот вопрос :)
 Sam12 июл. 2012 г., 10:31
Да, это именно то, что вы сказали вчера :)
 18 июл. 2012 г., 21:40
Это делает вещи намного проще и сложнее одновременно (^ _ ^). Мне нравится ZF2

Ваш ответ на вопрос