我正在使用这些行创建更新按钮的URL。
'url'=>'$this->grid->controller->createUrl("/testSettings/update", array("id"=>$data->Id,"approval"=>0))'
这很好,因为我已经硬编码了批准的价值。现在我必须用另一个变量$ approval的值来改变这个0。我怎样才能做到这一点。 即我必须给这个
'url'=>'$this->grid->controller->createUrl("/testSettings/update", array("id"=>$data->Id,"approval"=>$approval))'
以下是表格的附加代码
<form action="index.php">
<?php $approval = Yii::app()->request->getParam('approval',"0");?>
<?php echo CHtml::radioButtonList('approval',$approval,array('0'=>'Greetings Approval','1'=>'Contact Approval'),array(
'labelOptions'=>array('style'=>'display:inline'),
'onclick' => 'this.form.submit()',
'separator'=>'')); ?>
<?php echo CHtml::hiddenField('r', 'testSettings/admin'); ?>
</form>
答案 0 :(得分:3)
我会说有两种可能的方法:
您在模型中创建一个方法(“$ data”对象的类),称为“isApproved()”,根据您的逻辑返回true或false。然后你可以说
'url'=>'$this->grid->controller->createUrl("/testSettings/update", array("id"=>$data->Id,"approval"=isApproved()))'
如果在您的视图中某处设置了$ approval变量(这不是一个好习惯),那么您也可以使用像
这样的闭包'url'=> function($data) use ($approval) { return CController::createUrl("/testSettings/update", array("id"=>$data->Id,"approval"=>$approval) }