Виртуальные атрибуты модели игнорируются в Yii 2.0.45

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
NumbKun
Сообщения: 2
Зарегистрирован: 2020.03.03, 13:59

Виртуальные атрибуты модели игнорируются в Yii 2.0.45

Сообщение NumbKun »

Добрый день, столкнулся с такой проблемой после обновления фраемворка.
Имею модель, у которой есть выртуальные атрибуты, заполянемые при обращении к этой мадели, например после получения модели finOne()

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

class SameModel extends BaseActiveRecord
{
	public $same_attribute_id;
	...
}
Далее через ActiveForm вывожу атрибут формы:

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

$form->field($model, 'same_attribute_id'):
И при выводе значение зануляется.

Покопавшись в исходниках обнаружил, что в последнем обновлении фраемворка
yii\db\ActiveRelationTrait()::filterByModels()
Было:

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

  if (($value = $model[$attribute]) !== null) {...}
Стало:

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

  $value = isset($model[$attribute]) ? $model[$attribute] : null;
  if ($value !== null) {...}
При этом, при обращении к атрибуту значение присутствует, может быть есть советы как это исправить?
Ответить