instance method
namespace
Ruby on Rails 3.0.20
Since v3.0.20Signature
namespace(path, options = {})
Scopes routes to a specific namespace. For example:
namespace :admin do resources :posts end
This generates the following routes:
admin_posts GET /admin/posts(.:format) {:action=>"index", :controller=>"admin/posts"}
admin_posts POST /admin/posts(.:format) {:action=>"create", :controller=>"admin/posts"}
new_admin_post GET /admin/posts/new(.:format) {:action=>"new", :controller=>"admin/posts"}
edit_admin_post GET /admin/posts/:id/edit(.:format) {:action=>"edit", :controller=>"admin/posts"}
admin_post GET /admin/posts/:id(.:format) {:action=>"show", :controller=>"admin/posts"}
admin_post PUT /admin/posts/:id(.:format) {:action=>"update", :controller=>"admin/posts"}
admin_post DELETE /admin/posts/:id(.:format) {:action=>"destroy", :controller=>"admin/posts"}
Supported options
The :path, :as, :module, :shallow_path and :shallow_prefix options all default to the name of the namespace.
- :path
-
The path prefix for the routes.
namespace :admin, :path => "sekret" do resources :posts end
All routes for the above
resourceswill be accessible through/sekret/posts, rather than/admin/posts - :module
-
The namespace for the controllers.
namespace :admin, :module => "sekret" do resources :posts end
The
PostsControllerhere should go in theSekretnamespace and so it should be defined like this:class Sekret::PostsController < ApplicationController # code go here end
- :as
-
Changes the name used in routing helpers for this namespace.
namespace :admin, :as => "sekret" do resources :posts end
Routing helpers such as admin_posts_path will now be sekret_posts_path.
- :shallow_path
-
See the
scopemethod.
Parameters
-
pathreq -
optionsopt = {}
Source
# File actionpack/lib/action_dispatch/routing/mapper.rb, line 620
def namespace(path, options = {})
path = path.to_s
options = { :path => path, :as => path, :module => path,
:shallow_path => path, :shallow_prefix => path }.merge!(options)
scope(options) { yield }
end
Defined in actionpack/lib/action_dispatch/routing/mapper.rb line 620
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActionDispatch::Routing::Mapper::Scoping