module Undercarriage::Controllers::Restful::FlashConcern
Flash
Flash messages
Usage
class ExamplesController < ApplicationController include Undercarriage::Controllers::Restful::FlashConcern end # config/locales/flash.en.yml flash: actions: create: notice: "%{resource_name} was successfully created." update: notice: "%{resource_name} was successfully updated." destroy: notice: "%{resource_name} was successfully destroyed." posts: create: notice: "Your %{downcase_resource_name} was created." update: notice_html: "<strong>Huzzah!</strong> Your %{downcase_resource_name} was updated." notice: "Huzzah! Your %{downcase_resource_name} was updated." # Not used since `notice_html` is defined things: destroy: notice: "Good riddance. That wasn't needed anyway."
Protected Instance Methods
flash_created_message()
click to toggle source
Flash message for `#create` action
Translate create flash message
# File lib/undercarriage/controllers/restful/flash_concern.rb, line 52 def flash_created_message flash_message_builder(:create, flash_status_type, 'created') end
flash_destroyed_message()
click to toggle source
Flash message for `#destroy` action
Translate destroy flash message
# File lib/undercarriage/controllers/restful/flash_concern.rb, line 70 def flash_destroyed_message flash_message_builder(:destroy, flash_status_type, 'destroyed') end
flash_updated_message()
click to toggle source
Flash message for `#update` action
Translate update flash message
# File lib/undercarriage/controllers/restful/flash_concern.rb, line 61 def flash_updated_message flash_message_builder(:update, flash_status_type, 'updated') end
Private Instance Methods
flash_message_builder(action, status, past_tense)
click to toggle source
# File lib/undercarriage/controllers/restful/flash_concern.rb, line 76 def flash_message_builder(action, status, past_tense) defaults = flash_message_defaults(controller_name_singular_title, action, status, past_tense) message = defaults.shift I18n.t(message, resource_name: controller_name_singular_title, downcase_resource_name: controller_name_singular, default: defaults) end
flash_message_defaults(resource_name, action, status, past_tense)
click to toggle source
Default flash messages
List of default flash messages. The following is the list
flash.[NAMESPACE].[CONTROLLER].[ACTION].[STATUS]_html flash.[NAMESPACE].[CONTROLLER].[ACTION].[STATUS] flash.[CONTROLLER].[ACTION].[STATUS]_html flash.[CONTROLLER].[ACTION].[STATUS] flash.actions.[ACTION].[STATUS] English default
# File lib/undercarriage/controllers/restful/flash_concern.rb, line 97 def flash_message_defaults(resource_name, action, status, past_tense) controller_with_namespace = [resource_namespace, controller_name].compact.join('.') [ :"flash.#{controller_with_namespace}.#{action}.#{status}_html", :"flash.#{controller_with_namespace}.#{action}.#{status}", :"flash.#{controller_name}.#{action}.#{status}_html", :"flash.#{controller_name}.#{action}.#{status}", :"flash.actions.#{action}.#{status}", "#{resource_name} was successfully #{past_tense}." ] end