From dae109a4632af702b8556ecf029a27d91476848b Mon Sep 17 00:00:00 2001 From: Carlhuda Date: Fri, 26 Feb 2010 15:56:17 -0800 Subject: Including UrlFor in Redirecting and Head will warn usefully if a controller is wired up without a router included (and still support redirect_to "omg") --- actionpack/lib/action_controller/metal/head.rb | 5 ++--- actionpack/lib/action_controller/metal/redirecting.rb | 4 +--- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/actionpack/lib/action_controller/metal/head.rb b/actionpack/lib/action_controller/metal/head.rb index fe6e6186a5..a5c9910d68 100644 --- a/actionpack/lib/action_controller/metal/head.rb +++ b/actionpack/lib/action_controller/metal/head.rb @@ -2,6 +2,8 @@ module ActionController module Head extend ActiveSupport::Concern + include ActionController::UrlFor + # Return a response that has no content (merely headers). The options # argument is interpreted to be a hash of header names and values. # This allows you to easily return a response that consists only of @@ -24,9 +26,6 @@ module ActionController end self.status = status - # ROUTES TODO: Figure out how to rescue from a no method error - # This is needed only if you wire up a controller yourself, and - # this not working would be baffling without a better error self.location = url_for(location) if location self.content_type = Mime[formats.first] self.response_body = " " diff --git a/actionpack/lib/action_controller/metal/redirecting.rb b/actionpack/lib/action_controller/metal/redirecting.rb index de40ea77b1..25e4e18493 100644 --- a/actionpack/lib/action_controller/metal/redirecting.rb +++ b/actionpack/lib/action_controller/metal/redirecting.rb @@ -12,6 +12,7 @@ module ActionController include AbstractController::Logger include ActionController::RackDelegation + include ActionController::UrlFor # Redirects the browser to the target specified in +options+. This parameter can take one of three forms: # @@ -83,9 +84,6 @@ module ActionController raise RedirectBackError unless refer = request.headers["Referer"] refer else - # ROUTES TODO: Figure out how to rescue from a no method error - # This is needed only if you wire up a controller yourself, and - # this not working would be baffling without a better error url_for(options) end.gsub(/[\r\n]/, '') end -- cgit v1.2.3