aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_controller/base.rb
diff options
context:
space:
mode:
Diffstat (limited to 'actionpack/lib/action_controller/base.rb')
-rw-r--r--actionpack/lib/action_controller/base.rb9
1 files changed, 8 insertions, 1 deletions
diff --git a/actionpack/lib/action_controller/base.rb b/actionpack/lib/action_controller/base.rb
index 552075025f..9bf044b6c0 100644
--- a/actionpack/lib/action_controller/base.rb
+++ b/actionpack/lib/action_controller/base.rb
@@ -865,6 +865,13 @@ module ActionController #:nodoc:
return render(:file => default_template, :layout => true)
elsif options == :update
options = extra_options.merge({ :update => true })
+ elsif options.is_a?(String)
+ case options.index('/')
+ when 0
+ extra_options[:file] = options
+ end
+
+ options = extra_options
end
layout = pick_layout(options)
@@ -1183,7 +1190,7 @@ module ActionController #:nodoc:
end
def validate_render_arguments(options, extra_options)
- if options && options != :update && !options.is_a?(Hash)
+ if options && options != :update && !options.is_a?(String) && !options.is_a?(Hash)
raise RenderError, "You called render with invalid options : #{options.inspect}"
end