[Moscow.pm] Размышления на тему ORM и вообще работы с БД

Ivan Petrov i.petro.77.00 на gmail.com
Ср Окт 26 10:23:29 PDT 2011


> Вы готовите его неправильно

да по всякому пробовали

> 1. Нужно подменять storage, а не модель.

в этом случае ОЧЕНЬ сложные тесты получаются.
модель может экспортировать 2 функции. их подменить - в тесте написать
две функции.
в storage может оказаться что надо подменять 10-20 функций.

> 2. Если правильно выбирать has_one/belongs_to, то join_type => 'left' нужен в исключительных случаях

иногда да, иногда нет

> 3. К сожалению, да. DBIx::Class работает хорошо только с хорошей структурой БД. Когда все просто и не нужно делать SQL-извращений для получения результата.

хорошая структура она тоже вещь редкодостижима. причем в силу зачастую
объективных причин, как-то сознательная денормализация, заради
быстродействия. требования к хранению сложнозависимых объектов итп

получается что "хорошая структура" она удерживается в БД пока проект
еще почти ничего в себя не включает.


Подробная информация о списке рассылки Moscow-pm