rake routes
ваш друг здесь. Он выложит список ваших сгенерированных маршрутов - особенно полезно, если у вас есть куча вложенных или пользовательских маршрутов.
пути будут
admin_pages_path #(with GET) routes to :controller => 'admin/pages', :action => 'index'
admin_pages_path #(with POST) routes to :controller => 'admin/pages', :action => 'create'
new_admin_page_path #(with GET) routes to :controller => 'admin/pages', :action => 'new'
edit_admin_page_path(:id) #(with GET) routes to :controller => 'admin/pages', :action => 'edit'
admin_page_path(:id) #(with GET) routes to :controller => 'admin/pages', :action => 'show'
admin_page_path(:id) #(with PUT) routes to :controller => 'admin/pages', :action => 'update'
admin_page_path(:id) #(with DELETE) routes to :controller => 'admin/pages', :action => 'delete'
Поэтому ссылка для удаления должна быть:
<%= link_to("delete page", admin_page_path(@page), :confirm => "sure you want to delete this page?", :method => :delete) %>
Обратите внимание, что Rails будет использовать свой магический вызов to_param
на @page, поэтому вам не нужно указывать @ page.id - полезно для такого примера, как вы часто хотите использовать постоянные ссылки для «страниц».