CButtonColumn, вложенное исключение видимости в CGridView

В настоящее время я создал CButtonColumn в своем CGridView для отображения нескольких параметров для связанных моделей. Так

'buttons' => array(
            'publish' => array(
                'label' => 'Publish',
                'visible' => '(isset($data->deutsch))?true:false;',
                'imageUrl' => Yii::app()->request->baseUrl . '/images/publish.png',
                'click' => "function(){
   ...
return false;
}
...
            ),

Где «deutsch» — это имя отношения HAS_ONE, я в основном хочу создать видимое исключение таким образом, чтобы я сначала проверял, существует ли запись, а затем проверял поле в этой записи! поэтому я попытался реализовать вложенный оператор if:

'visible' => 'if(isset($data->deutsch)){if($data->deutsch->in_something==1){true;}false;} ',

Но, к сожалению, это не сработало. Должен ли я просто создать функцию и вызвать ее или есть более простой способ сделать это? Я ходил вокруг этого в течение последних 2 часов....

любая помощь, подсказки или советы очень ценятся :) Спасибо, что нашли время, чтобы прочитать это.


person Community    schedule 09.01.2013    source источник


Ответы (1)


'visible'=>'(isset($data->deutsch) && $data->deutsch->in_something==1)?true:false;'

Должно сработать для вас, я только что проверил это на аналогичном наборе данных в одном из моих проектов.

person Stu    schedule 09.01.2013
comment
Иногда эти вещи ускользают от меня!! Большое спасибо!! - person ; 09.01.2013