Вы можете (хотя это своего рода неправильное использование) использовать сопоставление ресурсов вместо ресурсов.
Вы можете добавить resource :offers
в ваш route.rb.
Это даст вам такие маршруты:
offers POST /offers(.:format) {:action=>"create", :controller=>"offers"}
new_offers GET /offers/new(.:format) {:action=>"new", :controller=>"offers"}
edit_offers GET /offers/edit(.:format) {:action=>"edit", :controller=>"offers"}
GET /offers(.:format) {:action=>"show", :controller=>"offers"}
PUT /offers(.:format) {:action=>"update", :controller=>"offers"}
DELETE /offers(.:format) {:action=>"destroy", :controller=>"offers"}
В качестве альтернативы я бы просто не использовал стандартное отображение редактирования и добавил свое собственное:
resources :offers, :except => [:edit, :update] do
get :edit, :on => :collection
put :update, :on => :collection
end
Если память мне не изменяет, в Rails 2.3.x должно работать следующее:
map.resources :offers, :except => [:edit, :update], :collection => { :edit => :get, :update => :put }
У меня нет такой удобной среды, поэтому я не могу проверить это сейчас ...