Страница 1 из 1

Behavior и наследники

Добавлено: 2020.09.03, 11:46
odermy
Есть такая ситуация, что после статического присоединения поведения в медели Product:

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

'price' => [
     'class' => \common\models\behaviors\ProductPrice::className(),
],
В поведении ProductPrice в методе attach owner-ом становится класс ProductSearch, котороый инициализируется ранее в контроллере

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

$filterModel = new ProductSearch();
$filterModel->active = Product::STATUS_ACTIVE;
$products = $filterModel->search(Yii::$app->request->get());
А при вызове любого другого из методов поведения(

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

public function getTestOwner(){}
) owner-ом становится класс Product
Так и должно быть ?

Re: Behavior и наследники

Добавлено: 2020.09.03, 13:21
ElisDN
Да, если ProductSearch extends Product, то и behaviors() наследуется в ProductSearch и там с ним работает.