Yii2 flash

Yii2 flash

От автора: приветствую вас, друзья. Мы продолжаем цикл статей, посвященных знакомству с фреймворком Yii2. В этой небольшой статье мы с вами добавим в админку Yii2 flash сообщения, с помощью которых мы можем передавать служебную информацию между страницами.

Сгенерируйте CRUD любой части приложения для админки (например, CRUD для постов) и попробуйте отредактировать любую статью. Изменения без проблем сохраняются, но вот пользователю об этом никак не сообщается. Чтобы исправить эту ситуацию, мы можем использовать так называемые flash сообщения.

По сути, эти сообщения являются некоторыми сессионными данными, которые доступны лишь в течение одного запроса. Поэтому в ситуации с CRUD они подходят нам как нельзя кстати. К примеру, обновили мы статью, записали во flash некоторое сообщение об успешной операции, перезапросили страницу и сразу же показали это сообщение. При этом после показа сообщение будет стерто, т.е. удалено из сессии. Это нужно для того, чтобы в случае обновления страницы данное сообщение не показывалось повторно.

Давайте попробуем записать сообщение и вывести его для пользователя. Итак, обратимся к соответствующему контроллеру и добавим следующую строку кода:

Yii::$app->session->setFlash('success', "Статья сохранена");

Yii2 flash

Фреймворк YII2. Быстрая разработка с современным PHP фреймворком

Узнай тонкости современной веб-разработки с помощью фреймворка YII2

Узнать подробнее

Таким образом, мы записали в сессию сообщение с ключом success. Теперь осталось в нужном месте вида или шаблона проверить наличие сообщения и вывести его. Сделать это можно, обратившись к методам hasFlash () и getFlash().

<?php if( Yii::$app->session->hasFlash('success') ): ?>
 <div class="alert alert-success alert-dismissible" role="alert">
 <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
 <?php echo Yii::$app->session->getFlash('success'); ?>
 </div>
<?php endif;?>

Yii2 flash

Собственно, это все. Теперь при сохранении статьи мы будем видеть вот такое приятное сообщение:

Yii2 flash

При обновлении страницы сообщение, как и положено, повторно выводиться не будет. Все просто.

Больше о фреймворке вы можете узнать из наших бесплатных или платных уроков. Также создание простейшего блога на Yii2 можно посмотреть в этом цикле уроков.

Самые свежие новости IT и веб-разработки на нашем Telegram-канале

Фреймворк YII2. Быстрая разработка с современным фреймворком

Узнай тонкости современной веб-разработки с помощью фреймворка YII2

Научиться

Метки:

Похожие статьи:

Комментарии Вконтакте:

Комментарии Facebook:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Я не робот.

Spam Protection by WP-SpamFree