2015-11-25 136 views
-1

我感動我的Rails項目到另一臺計算機,我收到此錯誤:導軌4路由錯誤「無路由匹配[GET]‘/項目’

No route matches [GET] "/project" 

Rails.root: /home/user/project 

我已經嘗試一切,仍然無法正常工作。

我的routes.rb如下:!

Rails.application.routes.draw do 

    resources :orders 
    get 'product_statuses/list' 

    resources :customers do 
    resources :shipping_addresses 
    end 

    resources :products do 
    resources :product_details do 
     resources :product_statuses 
    end 
    resources :prices 
    end 

    get 'welcome/index' 

end 

我真的需要幫助:(請

感謝

+2

您沒有'/ project'路由。你在什麼時候得到錯誤? –

回答

1

如果你想查看某個產品/產品如果給定的產品id爲1,則您定義的路線如下所示:

/products/1 
/products/1/edit 

可以通過提供對資源的空白路徑擺脫/產品/段,雖然有一些事情要注意佔據根命名空間這樣的時候:

resources :products, path: '' do 
    ... 
end 

這會給你喜歡的路線這樣的:

/1 
/1/edit 

如果你不滿意顯示在URL中的ID,你可以手動寫這樣的新航線(假設一個產品都有一個name屬性):

get '/:name', to: 'products#show' 

請注意,除非您在name屬性上強制實施唯一性,否則這將不起作用。

另一個選項是可以覆蓋顯示帕拉姆,並使用路由你已經有:

class Product 

    def to_param 
    name.parameterize 
    end 

    ... 
end 

這會給你這樣的路線:

/products/foo 
/products/darth-vader-marshmallows 

這將是值得的同時在此處查看Rails路由文檔:http://guides.rubyonrails.org/routing.html

相關問題