From db4f421b0bfae226005591b1da90e4b42edf178d Mon Sep 17 00:00:00 2001 From: Michael Koziarski Date: Mon, 18 Feb 2008 00:42:06 +0000 Subject: Add :trailing_slash option to UrlWriter. Closes #9117 [juanjo.bazan] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8892 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- actionpack/lib/action_controller/url_rewriter.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'actionpack/lib/action_controller') diff --git a/actionpack/lib/action_controller/url_rewriter.rb b/actionpack/lib/action_controller/url_rewriter.rb index d19e70fa1c..b24239b1e3 100644 --- a/actionpack/lib/action_controller/url_rewriter.rb +++ b/actionpack/lib/action_controller/url_rewriter.rb @@ -61,10 +61,11 @@ module ActionController # Delete the unused options to prevent their appearance in the query string. [:protocol, :host, :port, :skip_relative_url_root].each { |k| options.delete(k) } end - + trailing_slash = options.delete(:trailing_slash) if options.key?(:trailing_slash) url << ActionController::AbstractRequest.relative_url_root.to_s unless options[:skip_relative_url_root] anchor = "##{CGI.escape options.delete(:anchor).to_param.to_s}" if options[:anchor] - url << Routing::Routes.generate(options, {}) + generated = Routing::Routes.generate(options, {}) + url << (trailing_slash ? generated.sub(/\?|\z/) { "/" + $& } : generated) url << anchor if anchor url -- cgit v1.2.3