2011-06-13 75 views
1

我怎樣才能鏈接到父資源?我的Companies有很多Orders從嵌套資源鏈接到父母

我的訂單來看,我所列舉的相關公司

@order.company.name 

然而,當我嘗試使用的link_to,它鏈接只是順序:

<%= link_to @order.company.name, company_path %> 

在我的路線,我有這個:

resources :companies do 
    resources :orders do 
     resources :comments 
    end 
    end 

什麼是修復程序,我可以在哪裏閱讀更多的信息?

+0

取決於你的route.rb。它是默認的? .company是您的有效記錄集?那麼你可能不得不使用company.id,但首先是更多的信息。 – YvesR 2011-06-13 18:11:23

+0

嗨,上面做了一些編輯,謝謝Jx – 2011-06-13 18:16:04

+0

排序:<%= link_to @ order.company.name,:controller =>'companies',:action =>'show',:id => @ order.company。 id%>雖然不知道這是否有點ott。 Jx – 2011-06-13 18:27:14

回答

0

<%= link_to @order.company.name, company_path(@order.company) %>

你要的東西傳遞給company_path以便它知道這Company,以獲取其路徑。這與companies_path不同,它爲所有公司返回路徑。

/companies/12 VS /companies

+0

比我的解決方案好多了! – 2011-06-13 18:28:20

+0

我很高興它的工作!我不記得這是否是正確的解決方案。 – loosecannon 2011-06-13 20:06:15

+0

我更新了一個猜測的東西,並稍作闡述 – loosecannon 2011-06-13 20:09:23

0

我猜你有一個模型訂單和模式的公司。所以公司有命令。如果您使用通常的方式設置此記錄,則所有記錄都有ID作爲標識符。在這種情況下,如果您想要鏈接回公司頁面,company.id是記錄ID。