cgridview中的if/else值-yii

cgridview中的if/else值-yii,yii,Yii,有可能这样做吗 所以我有两个参与方,A和B。如果是用户A,那么他可以单击Accept链接,如果不是,则执行其他操作(禁用链接)。 什么不起作用“可见”,因为这会隐藏整个列。甲方可能在两种情况下都需要点击/不点击 寻找这样的东西: 'value'=>'CHtml::Link("Accept", array("$data->partyA()?array("site/accept):""", "id"=>$data->id));', 您可以使用匿名函数作为值: 'value'

有可能这样做吗

所以我有两个参与方,A和B。如果是用户A,那么他可以单击Accept链接,如果不是,则执行其他操作(禁用链接)。 什么不起作用
“可见”
,因为这会隐藏整个列。甲方可能在两种情况下都需要点击/不点击

寻找这样的东西:

'value'=>'CHtml::Link("Accept", array("$data->partyA()?array("site/accept):""", "id"=>$data->id));',

您可以使用匿名函数作为值:

'value'=>function($data,$row){
   if ($data->partyA()) return CHtml::link();
   else return "";
}
对此列使用
'type'=>'raw'
。此外,如果要将外部参数传递到栅格添加,请执行以下操作:

'value'=>function($data,$row) use($external){}

您可以使用匿名函数作为值:

'value'=>function($data,$row){
   if ($data->partyA()) return CHtml::link();
   else return "";
}
对此列使用
'type'=>'raw'
。此外,如果要将外部参数传递到栅格添加,请执行以下操作:

'value'=>function($data,$row) use($external){}
试试这个

    'value'=>'CHtml::link("Accept", # check your condition here # ? array("site/accept"):"#",
 array("id"=>$data->id);'
试试这个

    'value'=>'CHtml::link("Accept", # check your condition here # ? array("site/accept"):"#",
 array("id"=>$data->id);'