Zend Framework. Лучшее решение для расчета строк в таблице - PullRequest
0 голосов
/ 25 января 2010

Я новичок в ZF и у меня есть глупый вопрос:

Как лучше всего вычислить строки в таблице, если я работаю с унаследованным объектом класса Zend_Db_Table_Abstract?

Для моего первого веб-приложения я использую учебник QuickStart ( текст ссылки ), поэтому, если я хочу вычислить количество строк в таблице в контроллере, самое простое решение будет выглядеть примерно так:

$guestbooks = new Default_Model_GuestBook();
$count = count($guestbooks->fetchAll());

Но я не думаю, что fetchAll () - лучшее решение просто для вычисления строк в таблице, потому что таблица GuestBook может быть очень большой. Может быть, можно использовать что-то гораздо более легкое и простое?

В руководстве я обнаружил, что можно напрямую работать с адаптером БД (например, $ db-> query ("SELECT COUNT (*) FROM GuestBook");), но в руководстве QuickStart этот объект отсутствует контроллер, и я действительно не хочу создавать его только для одного простого действия.

Будем ждать предложений!

Спасибо

1 Ответ

4 голосов
/ 25 января 2010

Ваша модель уже содержит адаптер БД, поскольку он также работает с БД. Вы можете получить доступ к адаптеру БД с помощью метода getAdapter ().

$questbooks->getAdapter()->query("SELECT COUNT(*) FROM GuestBook");
...