StandardError
TODO: translate attribute first if BASE_ATTRIBUTES_KEY.key respond to a string message, then short_message is returned if BASE_ATTRIBUTES_KEY.key respond to a Hash, means it may have problem , summary and resolution
# File lib/grape/exceptions/base.rb, line 25 def compose_message(key, attributes = {}) short_message = translate_message(key, attributes) if short_message.is_a? Hash @problem = problem(key, attributes) @summary = summary(key, attributes) @resolution = resolution(key, attributes) [["Problem", @problem], ["Summary", @summary], ["Resolution", @resolution]].reduce("") do |message, detail_array| message << "\n#{detail_array[0]}:\n #{detail_array[1]}" unless detail_array[1].blank? message end else short_message end end
# File lib/grape/exceptions/base.rb, line 40 def problem(key, attributes) translate_message("#{key}.problem", attributes) end
# File lib/grape/exceptions/base.rb, line 48 def resolution(key, attributes) translate_message("#{key}.resolution", attributes) end
# File lib/grape/exceptions/base.rb, line 44 def summary(key, attributes) translate_message("#{key}.summary", attributes) end
# File lib/grape/exceptions/base.rb, line 66 def translate(key, options = {}) message = ::I18n.translate(key, options) message.present? ? message : ::I18n.translate(key, options.merge(locale: FALLBACK_LOCALE)) end
# File lib/grape/exceptions/base.rb, line 58 def translate_attribute(key, options = {}) translate("#{BASE_ATTRIBUTES_KEY}.#{key}", { default: key }.merge(options)) end
Generated with the Darkfish Rdoc Generator 2.