使用自己的操作代码创建自定义按钮

时间:2014-03-19 09:08:09

标签: php yii

我想为我的管理页面创建一个自定义按钮,并编写相应的操作但不起作用。这是我的代码,

这是我的代码:

admin.php的:

<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'login-form',
'action' => "/ContactlistController/actionSave",
)
);?>
<?php echo CHtml::submitButton('Save'); ?>
<?php $this->endWidget(); ?>



ContactlistController.php :
public function actionSave()
{
echo 'hi';
}

它说找不到网址。

我可以知道确切的错误是什么。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

如果你想为你的控制器命名一个名为actionSave的动作,你需要做不同的事情,因为动作前缀用于查找被调用的动作,所以如果你想去{{ 1}},您需要在image/takepicture中添加一个名为ImageController的动作,在您的情况下,

如果您想拥有actionTakepicture,则需要在Contactlist/actionSave中设置名为ContactlistController的函数,

actionActionsave

和控制器的名称相同,

并且这不是默认的命名约定:D

答案 1 :(得分:0)

您的代码中的问题是,您尝试将action设置为操作的名称,但它应该是必须将表单发送到的url

CActiveForm - action

这就是为什么你得到一个错误,因为你给了控制器/动作的名称。

您可以尝试创建一个网址,例如与createUrl

<?php $form=$this->beginWidget('CActiveForm', array(
  'id'=>'login-form',
  'action' => Yii::app()->createUrl("contactlist/save"),
)
);?>
<?php echo CHtml::submitButton('Save'); ?>
<?php $this->endWidget(); ?>