Есть ли лучший способ получить данные из нескольких таблиц базы данных с помощью Zend? Я хотел бы знать, а не пытаться реорганизовать код, который я пишу в ближайшем будущем. Я читал документацию Zend и он сказал, что:..Получение данных из нескольких таблиц при использовании рамки Zend?
«Вы не можете указывать столбцы из присоединенных таблиц должны быть возвращены в строке/наборе строк Это вызовет ошибку PHP Это было сделано для обеспечения целостность Zend_Db_Table имеет значение , то есть A Zend_Db_Table_Row должен ссылаться только на столбцы, полученные из его родительской таблицы. "
Я предполагаю, что поэтому мне нужно использовать несколько моделей - это правильно? Если, например, я хочу получить все заказы для определенного идентификатора пользователя, где дата находится между двумя датами, что бы я сделал?
Я знаю, что можно было бы получить доступ к двум различным моделям от контроллера, а затем объединить их соответствующие данные в действии, но я бы не чувствовал себя счастливым, делая это, так как я читал survivethedeepend.com и it tells me that I shouldn't do this ...
Где, почему и как? :)
Спасибо!
Вы предполагаете, что модель будет получить доступ к дополнительным классам, которые распространяются от Zend_Db_Table_Abstract? – olive
@Ihnz no, он предполагает, что модель является вашим приложением, в то время как ваши контроллеры и представления - это просто интерфейс. – Gordon
@ lhnz - на самом деле, да, но все остальное, что сказал Гордон, тоже верно. У вас могут быть некоторые классы persistence/data-mapper, которые используются в ваших более классных классах, ориентированных на домен, но ваша модель должна быть * больше *, чем просто абстракция базы данных. Если вы обнаружите, что используете классы, которые расширяют Zend_Db_anything непосредственно в ваших контроллерах, это большой красный флаг, который вам нужен для создания более богатой модели. – timdev