Центр документации
Карта сайта


Новая документация

Настройка платежных систем
Настройка способа оплаты КупиВкредит
Настройка способа оплаты Acquiro
Настройка способа оплаты AvisoSMS

Обновленная документация 

Разработчикам (API)
Руководство пользователя

Вычисляемые и виртуальные поля модели

Вычисляемые поля – это механизм преобразования данных из внутреннего формата хранения во внешний формат. Типовой пример вычисляемого поля – «дата создания», которая хранится в БД в mysql формате даты, но выдается моделью наружу в формате, соответствующем текущей локализации.
Виртуальные поля – это поля, которые физически не существуют в БД, как отдельное поле, но возвращаются моделью. Пример виртуального поля – поле «возраст», которое вычисляется «на лету» в зависимости от даты рождения, и которое не нужно сохранять в БД.
Виртуальные поля являются частным видом вычисляемых полей, поэтому далее будет идти речь только о вычисляемых полях.
Для того чтобы обозначить поле, как вычисляемое, в конструкторе модели элемента необходимо вызвать метод setFieldCallback.

Пример:

$this->setFieldCallback('birth', array($this, 'fcbDate'));

Первый параметр – название свойства модели, второй – callback. Существует ряд стандартных callback-функций, описанных в API, они начинаются с префикса fcb. Пример использования из документации:

// InstAmiSample_TableItem::__construct()
$this->setFieldCallback('birth', array($this, 'fcbDate'));

Существует возможность добавления собственных callback-функций. Пример добавления и прототип для собственных callback-функций приведен в описании метода setFieldCallback.
Рекомендуется для собственных callback-функций использовать префикс fcb.

Установка и настройка Руководство пользователя Интеграция дизайна Разработчикам (API) Документация для скачивания
 2000 – 2011 © Amiro.CMS Все права защищены.