如何解决yii2 DbSession中的闪存消息问题
我使用yii \ web \ DbSession类作为会话组件。当我使用Flash时,显示消息但未删除Flash并在其他页面上再次显示,如果我使用yii \ web \ Session类,则问题将得到解决。问题只在我使用DbSession类时出现。
我的代码:(在主布局中使用)
<?php
$session = Yii::$app->session;
if($session->hasFlash(‘success’)) {
$msg=$session->getFlash(‘success’);
$this->registerJs("
noty(’".trim($msg)."’,‘success’);
“);
}
if($session->hasFlash(‘error’)) {
$msg=$session->getFlash(‘error’);
$this->registerJs(”
noty(’".trim($msg)."’,‘error’);
");
}
?>
解决方法
可以使用setFlash()方法设置Flash消息
在您的控制器文件中添加以下代码。
Yii :: $ app-> session-> setFlash('success','处理成功');
setFlash方法的第一个参数可能是以下错误之一,危险,成功,信息,警告
这将确定即显消息的颜色
对于显示部分,需要在布局文件中放置以下代码-
<?= common\widgets\Alert::widget() ?>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。