Как стать автором
Обновить
0
0
Анатолий @tolyjan

Пользователь

Отправить сообщение
Спасибо за замечания. Инициализацию кэша действительно можно вынести, в моем классе показана идея для понимания что именно мы делаем и про какие вещи не стоит забывать. По поводу версии php 5.3 я внес правки в статью.
__construct нужен для инициализации параметров класса модели, которая наследуется от абстрактного. А __call и __callStatic нужны для вызова динамических и статических методов. Всё описание в статье.
Когда стояла эта задача я в первую очередь зашел на хабр и ничего подобного не нашел. И и пусть пишут про перепечатывание документации, но эти плоды результат моего дебага библиотеки ZF, это лучший способ заглянуть и узнать как это работает.
Меня хорошо стимулирует начальство и производительность сразу возрастает )
Спросите(получите) у Пушкина. Досвидание уважаемый!
Да чтобы глянуть какой длинны уши
Правильно, надо дождаться пока сами предложат
Спец службы сами и сливают информацию.
Боже упаси меня использовать подсчёт COUNT по depended rows. Если вы переживаете на этот счёт, то я этого не делаю. Мой вариант с join отличается от вашего, только лишь тем, что я не расширяю Zend_Db_Table_Row_Abstract, а выполняю select с join'ами в самой моделе. Тем не менее спасибо за пример.
Если у вас есть вариант получения данных более подходящий для этих целей, предложите.
Я использую fetchAll для тех целей, чтобы получить Zend_Db_Table_Rowset потом из ровсета получаю отдельные Zend_Db_Table_Row и только эти row могут работать с каскадными удалениями и обновлениями, также они могут находить Parent и Dependent rows.
У меня готова ещё одна статья про кэширование моделей, опубликовать её из-за минусовой кармы не имею возможности. Данная статья на данный момент имеет плюсовой рейтинг. Кому не безразлична судьба раздела Zend Framework на хабре и моя в частности, прошу плюсануть.
class Default_Models_Games_Table extends Zend_Db_Table_Abstract
{
protected $_name = 'games';
protected $_primary = array('game_id');
}

class Default_Models_Games
{
public function getGames()
{
$gamesModel = new Default_Models_Games_Table;
return $gamesModel->fetchAll();
}
}
это долго?..
возможно пример не самый подходящий, но это просто
В zf предоставлено достойное и грамотно спроектированное решение связки таблиц. И вполне удобное в применении. И было бы интересно узнать, что вы подразумеваете под выражением «чистый PDO»?
Ман по zf одним чтением не заканчивается. Только перечитывание и рабочий кусок кода может дать понимание происходящего. Только после этого можно взглянуть в документацию и сказать: «Да чё там, всё же и так понятно!»
а кто её читает?
Да, действительно, пожалуй здесь бы подошло выражение «неочевидные-малоизвестные возможности»
Данной статья не о том как правильно проектировать, а о том как создавать привязку данных из одной таблицы к данным другой таблицы.
Можно, но так нагляднее, поскольку в данном случае я имею подсказку от ide.
Действительно, признаю своё упущение.

Информация

В рейтинге
Не участвует
Откуда
Украина
Зарегистрирован
Активность