RESTful admin interface? how?

Hello,

So I have a web site with companies and products. I use REST and make
companies a resource and products a resource (and a 'sub-resource' of
company). But only for viewing, no new, no create, no destroy, no update. Now
I want to offer an admin interface that would be essentially the same but
with an URL prefix of /my/ to the URL, same models, but that are viewed
differently. Only the owned companies and products are shown (being logged in
is a requirement for everything in /my/), the interface would be different,
and it would allow create, destroy, update, etc. What is the RESTful way to
do it?

Thank you.

Would you know any online resources or online tutorails that teach how
to do this?

Elle

Yes, I've used to use that method in Rails 1.2, but I'm not sure it'll lead to
proper RESTful resources now.

What do you exactly mean by "this"? If you mean learn RESTful Rails, I've
learnt with http://b-simple.de/download/restful_rails_en.pdf

DHH talked about this in the RailsConf keynote, which you can read about here:

http://casperfabricius.com/blog/wp-content/uploads/2007/09/keynote-dhh.txt

basically you add the following to your routes file:

  map.namespace :admin do |admin|
    admin.resources :orders, :member => { :resend => :post }
    admin.resources :users, :collection => { :filter => :any }
end

#want to allow public access to certain methods for orders and users
map.resources :orders, :users

then you'll have a admin/users_controller.rb and
admin/orders_controller.rb files, as well as the public
users_controller and orders_controller. Your restful paths will look
like the following:

admin/users
admin/users/new
admin/users/edit

admin/orders/
admin/orders/edit
etc

so you stick your index and show methods in your public
users_controller, and put the admin index, create, update, etc, new,
etc into the admin/users_controller.

Adam