CGridView - фильтр по вычисляемому столбцу

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

CGridView - фильтр по вычисляемому столбцу

Сообщение nikkzz »

Всем привет, очень нужна помощь
Есть CGridView тащит данные из модели и вроде все ок.
Есть условный столбец, который тянет данные из функции, а если ничего не находит, то подставляет дефолтное значение.
Нужны Сортировка и Фильтр по этому столбцу.

Кусок Цгрида:

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

	array(
		'name' => 'subscribe',
		'header' => 'Тип подписки',
		'value' => 'Subscribe::sub_act($data->id)',
		'filter'=>false							
	),	
Функция из связанной модели:

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

	public static function sub_act($user_id)
	{
		$model=Subscribe::model()->findByAttributes(array('user_id'=>$user_id,'status'=>'active'));		

		if ($model){$actual = $model->sub_type;}
		else {$actual = 0;}
		return $actual;
	}	
В целом понимаю, что для фильтров, надо все делать на уровни основной модели, но как там сделать условный столбец, не понимаю.
Спасите, помогите.
Ответить