1

現在、CGridViewにCButtonColumnを作成して、関連するモデルのいくつかのオプションを表示しています。このような

'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時間これを回避してきました...

ヘルプ、ヒント、アドバイスは大歓迎です:)これを読んでくれてありがとう。

4

1 に答える 1

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

あなたのために働くはずです、私はちょうど私のプロジェクトの1つの同様のデータセットでこれをテストしました。

于 2013-01-09T14:45:31.760 に答える