Представим, что есть таблица, в которой существует мультиязычное поле. Мультиязычное поле - поле, имеющее разные значения для разных языков. К примеру, таблица book в ней поля title_en,title_ru,title_de Как лучше сделать абстракцию при работе с моделью, чтобы при обращении к $Book->title на самом деле я обращался бы к title_en, title_ru или title_de, в зависимости от выбранного языка? Это касается максимально возможного количества случаев (чтение, запись, обновление, подгрузка через findAll, в построителе запросов и т.п.) К примеру, у нас 16 языков. Если каждый раз делать выборку всех полей, то будет неэкономично. Т.е., если унас стоит язык ru, то при выборке * нужно выбираеть, к примеру, только поля: id, title_ru. А не всё сразу id, title_ru, title_en, title_de и т.п…
Очевидно, что помимо мультиязычных полей есть и обычные, а мультиязычных полей может быть несколько. Вариант с созданием таблиц book_en book_ru, book_de не подходит, совсем не тот случай. Не тот случай, потому что, если в books будет 1млн записей, 100 полей и лишь одно - мультиязычное, то будет очень нерационально.
В дальнейшем, хочу сделать виджеты для подобных полей, чтобы при редактировании человек мог выбрать язык поля.
Вообще, из этого получился бы очень удобный и нужный многим экстеншн.