aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_controller/resources.rb
diff options
context:
space:
mode:
authorTekin Suleyman <tekin@tekin.co.uk>2009-03-10 15:26:59 +0000
committerTekin Suleyman <tekin@tekin.co.uk>2009-03-10 15:26:59 +0000
commitf1e903aa92f9e4913f3a34135e2dee43bd0cb0c1 (patch)
treebc3ead9f6c1a703649fb06d4c6e83e5e220a8bfe /actionpack/lib/action_controller/resources.rb
parent7fa0a8d7f38a42d2f41a3f4aefc129d7071b0258 (diff)
parent5739626031b4d938652e5d5b84b20620dcbf6fde (diff)
downloadrails-f1e903aa92f9e4913f3a34135e2dee43bd0cb0c1.tar.gz
rails-f1e903aa92f9e4913f3a34135e2dee43bd0cb0c1.tar.bz2
rails-f1e903aa92f9e4913f3a34135e2dee43bd0cb0c1.zip
Merge branch 'master' of git://github.com/lifo/docrails
Diffstat (limited to 'actionpack/lib/action_controller/resources.rb')
-rw-r--r--actionpack/lib/action_controller/resources.rb11
1 files changed, 8 insertions, 3 deletions
diff --git a/actionpack/lib/action_controller/resources.rb b/actionpack/lib/action_controller/resources.rb
index 3af21967df..0a89c4b3d5 100644
--- a/actionpack/lib/action_controller/resources.rb
+++ b/actionpack/lib/action_controller/resources.rb
@@ -91,7 +91,7 @@ module ActionController
end
def shallow_path_prefix
- @shallow_path_prefix ||= "#{path_prefix unless @options[:shallow]}"
+ @shallow_path_prefix ||= @options[:shallow] ? @options[:namespace].try(:sub, /\/$/, '') : path_prefix
end
def member_path
@@ -103,7 +103,7 @@ module ActionController
end
def shallow_name_prefix
- @shallow_name_prefix ||= "#{name_prefix unless @options[:shallow]}"
+ @shallow_name_prefix ||= @options[:shallow] ? @options[:namespace].try(:gsub, /\//, '_') : name_prefix
end
def nesting_name_prefix
@@ -670,7 +670,12 @@ module ActionController
when "show", "edit"; default_options.merge(add_conditions_for(resource.conditions, method || :get)).merge(resource.requirements(require_id))
when "update"; default_options.merge(add_conditions_for(resource.conditions, method || :put)).merge(resource.requirements(require_id))
when "destroy"; default_options.merge(add_conditions_for(resource.conditions, method || :delete)).merge(resource.requirements(require_id))
- else default_options.merge(add_conditions_for(resource.conditions, method)).merge(resource.requirements)
+ else
+ if method.nil? || resource.member_methods.nil? || resource.member_methods[method.to_sym].nil?
+ default_options.merge(add_conditions_for(resource.conditions, method)).merge(resource.requirements)
+ else
+ resource.member_methods[method.to_sym].include?(action) ? default_options.merge(add_conditions_for(resource.conditions, method)).merge(resource.requirements(require_id)) : default_options.merge(add_conditions_for(resource.conditions, method)).merge(resource.requirements)
+ end
end
end
end