module BeyondTheApi::RenderHelpers
Public Instance Methods
render_json_errors(object)
click to toggle source
# File lib/beyond_the_api/render_helpers.rb, line 25 def render_json_errors(object) errors = object.errors render json: { errors: errors.messages, full_error_messages: errors.full_messages, meta: @meta }, status: 422 end
render_json_message(hash, status, optionals = {})
click to toggle source
# File lib/beyond_the_api/render_helpers.rb, line 19 def render_json_message(hash, status, optionals = {}) hash = hash.merge(meta: @meta) hash = hash.merge(optionals) render json: hash, status: status end
render_json_message_with_serializer(object, options = {})
click to toggle source
# File lib/beyond_the_api/render_helpers.rb, line 12 def render_json_message_with_serializer(object, options = {}) hash = serialized_object_with_root(object, options[:serializer_root]) hash.merge!(options[:message]) hash[:meta] = @meta render json: hash, status: (options[:status] || :ok) end
Private Instance Methods
serialized_object_with_root(object, root)
click to toggle source
# File lib/beyond_the_api/render_helpers.rb, line 39 def serialized_object_with_root(object, root) options = {} options[:current_user] = current_user if respond_to?(:current_user) root ||= object.class.to_s.underscore { root => object.serialize_to_json(options) } end
set_meta()
click to toggle source
# File lib/beyond_the_api/render_helpers.rb, line 33 def set_meta @meta ||= {} @meta[:version] = params[:controller].split('/').first @meta[:now] = Time.current end