Возникла следующая проблема в решении задач на Yii. Существует ActiveRecord класс Place, у которого есть поле `type`. В `type` может быть что-то вроде 'mountain', 'hills', 'river' и т.д. И, вообще говоря, хотелось бы в зависимости от этого `type` получать разные классы соответствующие разным 'type'(например, RiverPlace, HillsPlace). С запросами на добавление проблем нет и даже есть статья на эту тему http://www.yiiframework.com/wiki/198/si ... heritance/
А вот с выборкой из бд все не так просто. Решение "в лоб" в общем-то есть: для Place делать выборку `primaryKey` и `type`, а далее в onAfterFind получать заново уже нужный класс заново делая запрос в бд, но такое решение очень тяжелое при больших выборках. Получилось найти еще такой решение http://stackoverflow.com/questions/1288 ... verloading где для каждого type создавлось новое отношение модели с собой.
Есть ли иные решения?
Model Factory method
Re: Model Factory method
Behaviors?
Re: Model Factory method
@mkusher а статью вы только прочитали? Реализовать не пробовали? Может и проблемы нет?
Re: Model Factory method
@Ryadnov, спасибо, действительно подвела невнимательность при просмотре статьи:)