0

我有一个创建页面模板的应用程序。用户帐户中有许多页面(用户模板)。单击删除按钮时出现以下错误:

浏览器

Routing Error

No route matches [DELETE] "/pages/1"

html

 <%= link_to 'Delete', page_path(page), :method => :delete, 
                                        :confirm => "Are you sure you want to delete?", 
                                        :remote => true, 
                                        class: 'btn btn-table-action btn-danger' %> 

控制器

def destroy
  @page = Page.find(params[:attributeID])
  @page.destroy

  render :index
end

路线

    pages GET    /pages(.:format)                                 pages#index
          POST   /pages(.:format)                                 pages#create
edit_page GET    /pages/:id/edit(.:format)                        pages#edit
     page GET    /pages/:id(.:format)                             pages#show
          PUT    /pages/:id(.:format)                             pages#update

更新

路线.rb

resources :pages, only: [:index, :show, :create, :edit, :update] do
  resource :optin_integration, only: [:edit, :update]
end 

我从哪里开始创建删除路线并使我的删除按钮在 Rails 中起作用?

4

2 回答 2

1

您需要在销毁时使页面资源可用。

resources :pages, only: [:index, :show, :create, :edit, :update, :destroy] do
  resource :optin_integration, only: [:edit, :update]
end 

这是一个很好的 Rails 路由教程

于 2013-07-16T21:27:30.750 回答
1

看起来config/routes.rb您需要在文件中添加

resources :pages
于 2013-07-16T21:19:53.517 回答