aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/abstract_controller/url_for.rb
diff options
context:
space:
mode:
authorPiotr Sarnacki <drogus@gmail.com>2010-08-03 19:36:53 +0200
committerPiotr Sarnacki <drogus@gmail.com>2010-09-03 22:59:11 +0200
commit79bd92b7833d52b74f50259cf8a21f9b05f3e9e3 (patch)
treefccf5b1b08816f0e6575a2bd4b1349fc8f821b07 /actionpack/lib/abstract_controller/url_for.rb
parent4131a2d804c54960ac70984e7453069fe8688365 (diff)
downloadrails-79bd92b7833d52b74f50259cf8a21f9b05f3e9e3.tar.gz
rails-79bd92b7833d52b74f50259cf8a21f9b05f3e9e3.tar.bz2
rails-79bd92b7833d52b74f50259cf8a21f9b05f3e9e3.zip
Refactor ActionMailer to not use hide_actions
Diffstat (limited to 'actionpack/lib/abstract_controller/url_for.rb')
-rw-r--r--actionpack/lib/abstract_controller/url_for.rb28
1 files changed, 28 insertions, 0 deletions
diff --git a/actionpack/lib/abstract_controller/url_for.rb b/actionpack/lib/abstract_controller/url_for.rb
new file mode 100644
index 0000000000..2e9de22ecd
--- /dev/null
+++ b/actionpack/lib/abstract_controller/url_for.rb
@@ -0,0 +1,28 @@
+module AbstractController
+ module UrlFor
+ extend ActiveSupport::Concern
+
+ include ActionDispatch::Routing::UrlFor
+
+ def _routes
+ raise "In order to use #url_for, you must include routing helpers explicitly. " \
+ "For instance, `include Rails.application.routes.url_helpers"
+ end
+
+ module ClassMethods
+ def _routes
+ nil
+ end
+
+ def action_methods
+ @action_methods ||= begin
+ if _routes
+ super - _routes.named_routes.helper_names
+ else
+ super
+ end
+ end
+ end
+ end
+ end
+end