Tuesday, December 18, 2007

RESTful routes (namespaced)

I like having my administration (management) controllers namespaced. From a security perspective, it's easier to exclude a group of admin functions from certain users (or the general public) if you namespace the routes.

map.namespace(:admin) do |admin|
admin.resources :users
end

#The above will look for a controller class named:
class Admin::UsersController < ActionController::Base
...
end

Put these namespaced controllers in RAILS_ROOT/app/controllers/admin.

This means for any namespace you are using in your controllers you should have a corresponding app/controllers subdirectory.

0 comments: