diff options
author | Pratik Naik <pratiknaik@gmail.com> | 2008-09-10 19:06:59 +0100 |
---|---|---|
committer | Pratik Naik <pratiknaik@gmail.com> | 2008-09-10 19:06:59 +0100 |
commit | 6d1be5f1eb83fb693ffd00e1967c1b3ca1c9ece3 (patch) | |
tree | 059a4da48e9d4ec113c7df2bf915e83244ea3820 /actionpack/lib/action_controller | |
parent | d0a2b849f469469a1b189b4d077a95f35e31d65a (diff) | |
parent | c19c0e7872e65094b14bc08e24d19eebd9d1562a (diff) | |
download | rails-6d1be5f1eb83fb693ffd00e1967c1b3ca1c9ece3.tar.gz rails-6d1be5f1eb83fb693ffd00e1967c1b3ca1c9ece3.tar.bz2 rails-6d1be5f1eb83fb693ffd00e1967c1b3ca1c9ece3.zip |
Merge commit 'mainstream/master'
Diffstat (limited to 'actionpack/lib/action_controller')
5 files changed, 45 insertions, 5 deletions
diff --git a/actionpack/lib/action_controller/base.rb b/actionpack/lib/action_controller/base.rb index 670a049497..457b9e85bc 100644 --- a/actionpack/lib/action_controller/base.rb +++ b/actionpack/lib/action_controller/base.rb @@ -434,7 +434,11 @@ module ActionController #:nodoc: # render("test/template") will be looked up in the view load paths array and the closest match will be # returned. def view_paths - @view_paths || superclass.view_paths + if defined? @view_paths + @view_paths + else + superclass.view_paths + end end def view_paths=(value) @@ -449,7 +453,7 @@ module ActionController #:nodoc: # ArticleController.prepend_view_path(["views/default", "views/custom"]) # def prepend_view_path(path) - @view_paths = superclass.view_paths.dup if @view_paths.nil? + @view_paths = superclass.view_paths.dup if !defined?(@view_paths) || @view_paths.nil? @view_paths.unshift(*path) end diff --git a/actionpack/lib/action_controller/benchmarking.rb b/actionpack/lib/action_controller/benchmarking.rb index 746894497c..fa572ebf3d 100644 --- a/actionpack/lib/action_controller/benchmarking.rb +++ b/actionpack/lib/action_controller/benchmarking.rb @@ -76,7 +76,8 @@ module ActionController #:nodoc: log_message << view_runtime if logging_view if logging_active_record - log_message << ", " + active_record_runtime + ")" + log_message << ", " if logging_view + log_message << active_record_runtime + ")" else ")" end diff --git a/actionpack/lib/action_controller/routing/recognition_optimisation.rb b/actionpack/lib/action_controller/routing/recognition_optimisation.rb index 6d54d0334c..4935432d87 100644 --- a/actionpack/lib/action_controller/routing/recognition_optimisation.rb +++ b/actionpack/lib/action_controller/routing/recognition_optimisation.rb @@ -134,6 +134,9 @@ module ActionController def write_recognize_optimized! tree = segment_tree(routes) body = generate_code(tree) + + remove_recognize_optimized! + instance_eval %{ def recognize_optimized(path, env) segments = to_plain_segments(path) @@ -147,6 +150,25 @@ module ActionController end }, __FILE__, __LINE__ end + + def clear_recognize_optimized! + remove_recognize_optimized! + + class << self + def recognize_optimized(path, environment) + write_recognize_optimized! + recognize_optimized(path, environment) + end + end + end + + def remove_recognize_optimized! + if respond_to?(:recognize_optimized) + class << self + remove_method :recognize_optimized + end + end + end end end end diff --git a/actionpack/lib/action_controller/routing/route_set.rb b/actionpack/lib/action_controller/routing/route_set.rb index 9d48f289db..ff448490e9 100644 --- a/actionpack/lib/action_controller/routing/route_set.rb +++ b/actionpack/lib/action_controller/routing/route_set.rb @@ -195,7 +195,7 @@ module ActionController self.routes = [] self.named_routes = NamedRouteCollection.new - write_recognize_optimized! + clear_recognize_optimized! end # Subclasses and plugins may override this method to specify a different @@ -217,7 +217,7 @@ module ActionController @routes_by_controller = nil # This will force routing/recognition_optimization.rb # to refresh optimisations. - @compiled_recognize_optimized = nil + clear_recognize_optimized! end def install_helpers(destinations = [ActionController::Base, ActionView::Base], regenerate_code = false) diff --git a/actionpack/lib/action_controller/translation.rb b/actionpack/lib/action_controller/translation.rb new file mode 100644 index 0000000000..9bb63cdb15 --- /dev/null +++ b/actionpack/lib/action_controller/translation.rb @@ -0,0 +1,13 @@ +module ActionController + module Translation + def translate(*args) + I18n.translate *args + end + alias :t :translate + + def localize(*args) + I18n.localize *args + end + alias :l :localize + end +end
\ No newline at end of file |