在我的网站中,用户评分和反馈文本区域位于网站的消息页面中,我想将它们与消息页面分开并为它们创建新页面。您可以在下面看到有关评级和消息控制器文件反馈的代码。
// send feedback
public function actionSendFeed() {
$this->layout = $this->view_dir.'/Rate-Supplier';
$first_message = $this->getFirstChain(Yii::$app->request->post('chain', false));
$mail_data = $this->getMessageReceiver($first_message);
// save feedback if not empty
$feed_data = Yii::$app->request->post('Feedback', false);
if($feed_data['rate'] >= 1){
$feed_model = new Feedback();
$feed_model->customer_id = $mail_data['send_to'];
$feed_model->author_id = Yii::$app->user->identity->id;
$feed_model->subject = $first_message->subject;
$feed_model->seen = 0;
$feed_model->created_at = time();
if(!$feed_model->load(Yii::$app->request->post()) || !$feed_model->save()){
Yii::$app->session->setFlash('error', Yii::t('alerts', 'err_send_feedback'));
}else{
Yii::$app->session->setFlash('success', Yii::t('alerts', 'feedback_sent'));
// send email to customer about new feedback
\common\components\helpers\MailHelper::send(
'new_feedback',
[SH::get('support_email') => Yii::$app->name],
$mail_data['email_to'],
['{supplier_name}', '{buyer_name}', '{text}'],
[$mail_data['name_to'], Yii::$app->user->identity->name, $feed_model->text]
);
}
}
return $this->redirect(Yii::$app->request->referrer);
}
我试图渲染,但没有成功。请与我分享您的意见,我如何才能正确呈现,以便我可以创建一个新的单独页面来评估和反馈。
提前谢谢!
答案 0 :(得分:0)
要从控制器渲染视图文件中的页面,您必须使用以下代码:
return $this->render('index', [ 'arr' => Yii::$app->request->referrer ]);
// index = 'Your View File Name'