Каждый раз, когда необходимо выводить flash-сообщение сталкиваешься с одними и теми же проблемами: непонятно где эти сообщения выводить, толи заранее на странице определить место, которое жалко, толи сделать растягиваемый дизайн, что не всегда удобно. А еще этих сообщений может быть много, а еще каждый норовит сохранять их под своим ключем (warning, notice..). Когда понадобилось посылать пользователю сообщения из delayed_job стало понятно что нужно решить эту проблем раз и навсегда.
gem gritter_notice — выводит flash и удобно обрабатывает сохраняемые в базе всплывающие сообщения в 5 строчек кода.
Визуальный пример: boedesign.com/demos/gritter
Подключаем модули в Gemfile
Создаем таблицу gritter_notices
Подключаем в notices в модель user:
В layout делаем так (haml-пример):
Подробнее: github.com/dapi/gritter_notices
gem gritter_notice — выводит flash и удобно обрабатывает сохраняемые в базе всплывающие сообщения в 5 строчек кода.
Визуальный пример: boedesign.com/demos/gritter
Установка:
Подключаем модули в Gemfile
gem 'gritter' # Не забываем произвести установку js,css и image-файлов согласно его инструкциям gem 'gritter_notice'
Создаем таблицу gritter_notices
rails g gritter_notices rake db:migrate
Подключаем в notices в модель user:
class User < ActiveRecord::Base has_gritter_notices
В layout делаем так (haml-пример):
%head = include_gritter %body = gritter_flash_messages
Использование
user.notice 'Просто текстовое сообщение' # Покажет простое текстовое сообщение user.notice 'Текстовое сообщение', :level=>:error, :sticky=>true # Сообщение застынет до тех пор пока его не закроют.
Подробнее: github.com/dapi/gritter_notices