Page MenuHomeGRNET

location_responder.rb
No OneTemporary

File Metadata

Created
Tue, Nov 18, 11:42 PM

location_responder.rb

module Responders
# Responder to accept callable objects as the redirect location.
# Useful when you want to use the <tt>respond_with</tt> method with
# a route that requires persisted objects, but the validation may fail.
#
# class ThingsController < ApplicationController
# responders :location, :flash
# respond_to :html
#
# def create
# @thing = Things.create(params[:thing])
# respond_with @thing, location: -> { thing_path(@thing) }
# end
# end
#
module LocationResponder
def initialize(controller, resources, options = {})
super
if options[:location].respond_to?(:call)
location = options.delete(:location)
options[:location] = location.call unless has_errors?
end
end
end
end

Event Timeline