yii2 Вывод однократного уведомления setFlash, \Yii::$app->session->getFlash Пример
Primary tabs
Yii2 позволяет вывести сообщение, которое будет показано пользователю только один раз -- например, на одну и ту же страницу вы можете попадать после разных действий и содержимое этой страницы напрямую с теми действиями не связано, чтобы сообщить пользователю о статусе этих действий можно использовать однократные уведовления -- если обновить страницу, на которую пользователь был направлен, они пропадут (до этого выведутся один раз, если вообще были установлены).
Где-то, например в контроллере (устанавливаем):
\Yii::$app->getSession()->setFlash('имя_ключа_сообщения', 'текст сообщения.');
Где-то во view извлекаем чтобы показать пользователю, например:
<?= \Yii::$app->session->getFlash('имя_ключа_сообщения'); ?>
Пример
В контроллере:
if ($model->save()) { \Yii::$app->getSession()->setFlash('report_message', 'Сообщение создано успешно.'); return $this->redirect(['check', 'id' => (string)$model->_id]); // переход на другую страницу }
А в представлении выведем сообщение (view):
<div style="background-color:rgb(153, 255, 153)"> <?= \Yii::$app->session->getFlash('report_message'); ?> </div>
- Log in to post comments
- 4413 reads