aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_dispatch/routing
diff options
context:
space:
mode:
authorJoshua Peek <josh@joshpeek.com>2009-11-03 11:23:22 -0600
committerJoshua Peek <josh@joshpeek.com>2009-11-03 11:23:22 -0600
commitf950d0b4af54c3d387024dce2c5e2bc56aef0fc3 (patch)
tree44a61c307d733e48399e09e8a99dca92dc5e62d2 /actionpack/lib/action_dispatch/routing
parentaaa5a692a3e471f7f8f50957aac1c06fd30ec166 (diff)
downloadrails-f950d0b4af54c3d387024dce2c5e2bc56aef0fc3.tar.gz
rails-f950d0b4af54c3d387024dce2c5e2bc56aef0fc3.tar.bz2
rails-f950d0b4af54c3d387024dce2c5e2bc56aef0fc3.zip
Fix simple resource named routes for new routing dsl
Diffstat (limited to 'actionpack/lib/action_dispatch/routing')
-rw-r--r--actionpack/lib/action_dispatch/routing/mapper.rb28
1 files changed, 20 insertions, 8 deletions
diff --git a/actionpack/lib/action_dispatch/routing/mapper.rb b/actionpack/lib/action_dispatch/routing/mapper.rb
index d6d822842b..ebfb4c9be2 100644
--- a/actionpack/lib/action_dispatch/routing/mapper.rb
+++ b/actionpack/lib/action_dispatch/routing/mapper.rb
@@ -20,15 +20,20 @@ module ActionDispatch
return self
end
- controller(resource) do
+ singular = resource.to_s
+ plural = singular.pluralize
+
+ controller(plural) do
namespace(resource) do
with_scope_level(:resource) do
yield if block_given?
- get "", :to => :show
+ get "", :to => :show, :as => "#{singular}"
post "", :to => :create
put "", :to => :update
- delete "", :to => :destory
+ delete "", :to => :destroy
+ get "new", :to => :new, :as => "new_#{singular}"
+ get "edit", :to => :edit, :as => "edit_#{singular}"
end
end
end
@@ -54,22 +59,25 @@ module ActionDispatch
return self
end
+ plural = resource.to_s
+ singular = plural.singularize
+
controller(resource) do
namespace(resource) do
with_scope_level(:resources) do
yield if block_given?
member do
- get "", :to => :show
+ get "", :to => :show, :as => "#{singular}"
put "", :to => :update
- delete "", :to => :destory
- get "edit", :to => :edit
+ delete "", :to => :destroy
+ get "edit", :to => :edit, :as => "edit_#{singular}"
end
collection do
- get "", :to => :index
+ get "", :to => :index, :as => "#{plural}"
post "", :to => :create
- get "new", :to => :new
+ get "new", :to => :new, :as => "new_#{singular}"
end
end
end
@@ -221,6 +229,10 @@ module ActionDispatch
map_method(:delete, *args, &block)
end
+ def root(options = {})
+ match '/', options.merge(:as => :root)
+ end
+
def match(*args)
options = args.last.is_a?(Hash) ? args.pop : {}