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
- 5110 reads