Виртуальное поле в findAll...

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
jakiro
Сообщения: 553
Зарегистрирован: 2013.03.05, 15:15

Виртуальное поле в findAll...

Сообщение jakiro »

Всем добра!
Как добавить простое поле дополнительное, в каждый ряд выборки findAll или findAllByAttributes?
т.е. что то вроде флажка расставить для каждой записи (для каждого ряда), на лету.
Аватара пользователя
Insolita
Сообщения: 788
Зарегистрирован: 2011.06.06, 01:39
Контактная информация:

Re: Виртуальное поле в findAll...

Сообщение Insolita »

есть у модели метод afterFind
jakiro
Сообщения: 553
Зарегистрирован: 2013.03.05, 15:15

Re: Виртуальное поле в findAll...

Сообщение jakiro »

Да, получается, я в модели объявляю новое поле

Код: Выделить всё

public $new_field; 
Потом реализую сам метод

Код: Выделить всё

public function afterFind()
  {
    $this->new_field = '111';
    parent::afterFind();
  } 
Теперь, поле new_field доступно по всех рядах :)
IStranger
Сообщения: 36
Зарегистрирован: 2011.11.04, 10:46
Контактная информация:

Re: Виртуальное поле в findAll...

Сообщение IStranger »

А чем геттер (+ по необходимости сеттер) для этих целей не подходит?

Код: Выделить всё

/**
* @return int 
*/
public function getNewField()
{
    return '111';
}
Читается совершенно также $model->newField;

А если потребуется искать по этим полям, можно попробовать решение:
viewtopic.php?f=3&t=19146&p=112466#p112466
Последний раз редактировалось IStranger 2014.12.23, 15:04, всего редактировалось 1 раз.
G.Azamat { Web Development / Computer simulation }
Начинающий программист думает, что в килобайте 1000 байтов, а законченный уверен, что в километре 1024 метра.
jakiro
Сообщения: 553
Зарегистрирован: 2013.03.05, 15:15

Re: Виртуальное поле в findAll...

Сообщение jakiro »

Спасибо за доп. вариант.
Ответить