2016-03-28 4 views
0

Я хочу скрыть столбец в yii на основе условия. Я использовал функцию в модели. но видимая функциональность в этом столбце не работает.Как скрыть столбец в yii

 $this->widget('zii.widgets.grid.CGridview', array(
      'id'=>'gridview', 
      'dataProvider'=>$dp, 
          'columns'=>array(
         array(
          'header' => 'Entries', 
          'value' => '$data->entry_name' 
         ), 
         array(
          'name' => 'value', 

          'value' => '$data->entry_name', 
          'visible'=>'$data->show()',  
          'type'=>'raw' 
         ), 
        ) 
      ) 
     ); 

функция в модели

public function show() 
{ 
......... 
return 1 or 0; 

} 

но это не работает. Пожалуйста, помогите

ответ

0

Я еще не вижу условия. Вы должны использовать оператор сравнения, например, return $this->attribute !== null; в вашей функции show. Возвращает true, если атрибут содержит некоторое значение. Или, если вы хотите сделать это на случайном уровне, вы можете return rand(0,1) == 1;.

+0

public function show() {$ c = Model :: model() -> findbypk ($ this-> id); if ($ c) {return 1} else {return 0}} – user1234

+0

Я использовал этот код в своей функции и возвратил 0 или 1, но он еще не работает – user1234

+0

'return 1 или 0;' всегда равен 'return 1 ; 'и если вы проверяете, существует ли модель с идентификатором, равным id текущей модели, то это также будет всегда верно. – ttdijkstra

Смежные вопросы