Связанные таблицы. Undefined variable в модели

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
Аватара пользователя
ninzzo
Сообщения: 348
Зарегистрирован: 2014.04.25, 07:29

Связанные таблицы. Undefined variable в модели

Сообщение ninzzo »

В модели Pro сделал relations:

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

...'proPlan' => array(self::BELONGS_TO, 'Plan', 'plan'), 
...


и метод:

public static function getPlanName($id) {        
    return $proPlan->name;            
}

в cgridview вывожу:

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

array(
            'type' => 'raw',
            'name' => 'plan',
            'value' => '$data->getPlanName($data->plan)',
            'filter' => false,
        ),


В итоге получаю ошибку:
"Undefined variable: proPlan"



если выводить в cgridview просто 'proPlan.name' то все отлично работает. Но мне нужен именно мой способ, т.к я буду в модели кое что дополнять к выводу.
В чем может быть проблема?
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: Связанные таблицы. Undefined variable в модели

Сообщение zelenin »

public static function getPlanName($id) {
return $proPlan->name;
}

ну так откуда тут берется $proPlan? в ошибке про это и пишут - "Undefined variable: proPlan"
Аватара пользователя
Said
Сообщения: 138
Зарегистрирован: 2015.06.04, 10:16

Re: Связанные таблицы. Undefined variable в модели

Сообщение Said »

Доброго времени суток.
Должно быть так:

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

public function getPlanName() {        
    return $this->proPlan->name;            
}
 

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

array(
            'type' => 'raw',
            'name' => 'plan',
            'value' => '$data->getPlanName()',
            'filter' => false,
        ),
 
Ответить