class RailsToolViews::Error
A recoverable rejection with a stable code and HTTP status.
Constants
- MESSAGES
Attributes
Public Class Methods
Source
# File lib/rails_tool_views/core.rb, line 24 def self.message_for(code) fallback = MESSAGES.fetch(code) { "The request was rejected (#{code})." } defined?(::I18n) ? ::I18n.t(code.downcase, scope: %i[rails_tool_views errors], default: fallback) : fallback end
Hosts own the wording of their codes: pass message:, or translate rails_tool_views.errors.<downcased code>. Built-in codes translate the same way.
# File lib/rails_tool_views/core.rb, line 29 def initialize(code, status: 400, message: nil) @code, @status = code, status super(message || self.class.message_for(code)) end
Creates a rejection; message overrides the default or translated wording.
Calls superclass method
Public Instance Methods
Source
# File lib/rails_tool_views/core.rb, line 34 def to_h { status: "rejected", code: code, message: message } end
Returns a bounded rejection payload for the caller.