Как вызвать функцию модели в кнопке cgridview для свойства visible в yii

0

Как решить проблему?

array(
        'header'=>'Manage',
        'class'=>'CButtonColumn',
        'template'=>'{Manage}',
        //'visible'=>'$data->checkSub($data->sub_id)', //it not work not call function
                'visible'=>Model::test(), //it works

        'buttons'=>array(
                'Manage Exam Result'=>array(
                            'label'=>'<i class="fa fa-cogs"></i>',

                        ),
                ),
        ), 
),
Теги:
yii

2 ответа

0
array(
  'class'=>'CButtonColumn',
                 'buttons'=>array(
                            'manage' => array('visible' => 'name_function($data->id)'),
                  ),
            ),
0

visible не оценивается для каждой строки, он должен быть установлен в true или false в конце. Поэтому, чтобы определить, отображается ли текущий столбец, вам нужно вызвать одну функцию из вашего представления, которая возвращает true или false.

[
    ...
    'visible' => Model::checkIfVisibleColumn(),
    ...
],
  • 0
    привет, Джастинас, ваш ответ правильный, но я передал некоторые данные в функции, такие как 'visible' => Model :: Test ($ data-> id), это не работает
  • 0
    @HirenBhut Чем ваша функция не так. Что если в одной строке эта функция возвращает true, а в другой - false?
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню