2014-02-26 126 views
0

我正在嘗試爲我的結帳控制器創建額外的路徑。這裏是我的路線:Rails路由:收集路由不斷添加「_index」到url助手?

resources :checkout do 
    collection do 
    post :add_to_cart, :to => 'checkout#add_to_cart' 
    put :update_shopping_cart, :to => 'checkout#update_shopping_cart' 
    get :billing 
    post :update_billing 
    put :update_billing 
    post :update_shipping 
    put :update_shipping 
    get :order_summary 
    post :submit_order 
    get :order_complete 
    get :clone_shipping_address 
    get :estimate_shipping 
    end 


end 

然而,當我做了bundle exec rake routes | grep checkout,我所有的定製路由有一個我不想要一個_index後綴:

   add_to_cart_checkout_index POST /checkout/add_to_cart(.:format)         checkout#add_to_cart 
    update_shopping_cart_checkout_index PUT /checkout/update_shopping_cart(.:format)      checkout#update_shopping_cart 
       billing_checkout_index GET /checkout/billing(.:format)          checkout#billing 
      update_billing_checkout_index POST /checkout/update_billing(.:format)        checkout#update_billing 
             PUT /checkout/update_billing(.:format)        checkout#update_billing 
     update_shipping_checkout_index POST /checkout/update_shipping(.:format)        checkout#update_shipping 
             PUT /checkout/update_shipping(.:format)        checkout#update_shipping 
      order_summary_checkout_index GET /checkout/order_summary(.:format)        checkout#order_summary 
      submit_order_checkout_index POST /checkout/submit_order(.:format)        checkout#submit_order 
      order_complete_checkout_index GET /checkout/order_complete(.:format)        checkout#order_complete 
    clone_shipping_address_checkout_index GET /checkout/clone_shipping_address(.:format)      checkout#clone_shipping_address 
     estimate_shipping_checkout_index GET /checkout/estimate_shipping(.:format)       checkout#estimate_shipping 
         checkout_index GET /checkout(.:format)            checkout#index 
             POST /checkout(.:format)            checkout#create 
          new_checkout GET /checkout/new(.:format)           checkout#new 
          edit_checkout GET /checkout/:id/edit(.:format)         checkout#edit 
           checkout GET /checkout/:id(.:format)           checkout#show 
             PUT /checkout/:id(.:format)           checkout#update 
             DELETE /checkout/:id(.:format)           checkout#destroy 

我怎麼刪除?

回答

2

你變複數的資源的名稱:

resources :checkouts do 
    ## your routes 
end 

事實上,你必須使用resource :checkoutresources :checkouts,這取決於你所需要的。