2011-04-14 90 views
0

我有分組這樣的嵌套模型集,其中c是加入的B和X導軌3:兒童模型中直接引用字段在父

b屬於一/一個有許多B的 C屬於與b/b有很多c's c屬於x/x有許多c's

在一個表單中,我想在下面的嵌套循環中顯示c.x_name(其中x_name在x表中),該循環沿a> b > c等級

for b in a.b's 
    for c in b.c's 
     c.x_name 

我試過了我的show命令爲c.show_x_name(c.id),然後把在C型

def show_x_name(x_id) 
    X.where(:id => x_id) 
end 

下列不過,我得到一個未知的密鑰(S):從視圖ID錯誤。將視圖上的ruby更改爲c.id會呈現正確的編號。

這是我第一次嘗試Rails 3 ...我錯過了什麼?

謝謝!

+0

給你的模型合理的名稱,a,b,c,x等很難遵循。 – 2011-04-14 12:19:38

回答

1

那麼,我迷失在所有這些a,b,c和x-es中。但看看the guides

在您的c模型中添加belongs_to :x,在您的x模型中添加has_many :cs。 然後你應該可以使用c.x.name

但是c.x可能返回nil,如果c與x沒有關係。順便說一下,最好是給我們正確的名字,或者一些可能與原文相同的名字。

你在x數據庫中有id屬性嗎?

Terw

+0

謝謝。這樣可行。 – nktokyo 2011-04-14 12:28:21

+0

也幫了我,謝謝! – am17torres 2012-09-16 21:33:28