我不知道如何将隐藏数据从控制器 1 的函数(动作)发送到 yii 中的控制器 2 的函数(动作)。
我认为通过 POST 将数据发送到第二个函数,我不打算在不使用表单的情况下发送 POST 数据知识。
你能帮助我吗?
对不起我的英语不好
控制器1:
类 DeviceController 扩展控制器 {
public function actionDeviceTurnOn(){ if(isset($_GET['id_device'])){ $id_device = $_GET['id_device']; $model = $this->loadModel($id_device); $model->status = 1; $title = "Message of admin"; $message = "Good morning" . "\r\n" . "\r\n" . "The device is On"; MessagesController::messageAutoComplete(Yii::app()->user->id, $_GET['id_user'], $title, $message); } } } ?>
控制器 2:
类 MessagesController 扩展控制器 {
public function messageAutoComplete($from_user_id=null, $to_user_id=null, $title=null, $message=null){ $data['from_user_id'] = $from_user_id; $data['to_user_id'] = $to_user_id; $data['title'] = $title; $data['message'] = $message; MessagesController::actionCompose($data); } public function actionCompose ($data=null) { $model=new Messages; $this->performAjaxValidation($model); if(isset($_POST['Messages'])) { foreach($_POST['Messages']['to_user_id'] as $user_id) { $model = new Messages; $model->attributes=$_POST['Messages']; $model->to_user_id = $user_id; $model->save(); } $this->redirect(array('success')); } $model->to_user_id = ""; if($data != null){ $model->from_user_id = $data['from_user_id']; $model->to_user_id = $data['to_user_id']; $model->title = $data['title']; $model->message = $data['message']; } $this->render('compose',array( 'model'=>$model, )); } }
这是我会做的,但它不起作用!