我想为我的管理页面创建一个自定义按钮,并编写其相应的操作,但不工作。这是我的代码,
下面是我的代码:
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';
}
表示没有找到url。
我可以知道确切的错误是什么吗?如果你想在你的控制器中有一个名为:actionSave
的动作,你需要做不同的事情,因为动作前缀是用来找到被调用的动作的,所以如果你想去image/takepicture
,你需要在你的ImageController
中有一个名为:actionTakepicture
的动作,在你的情况下,
如果你想有Contactlist/actionSave
,在你的ContactlistController
中你需要有一个名为actionActionsave
的函数,
public function actionActionsave(){
...
}
对于控制器的名称也是一样,
这不是默认的命名约定:D
代码中的问题是,您尝试将action
设置为动作的名称,但它应该是url
,其中表单必须发送到。
CActiveForm - action
这就是为什么你会得到一个错误,因为你给出了控制器/动作的名称。
你可以尝试创建一个URL,例如createUrl
:
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'login-form',
'action' => Yii::app()->createUrl("contactlist/save"),
)
);?>
<?php echo CHtml::submitButton('Save'); ?>
<?php $this->endWidget(); ?>