2011-11-30 58 views
0

在Rails中,我有一個名爲Director的模型,它引用了一個名爲「director」的字段的表。Rails指的是字段名稱,而不是名稱相同的兩個表之間的關係

當我使用連接的查詢(要麼在模型或使用.joins法的關係),然後嘗試打印導演領域,我得到的關係,而不是場,這樣算下來

<% @dvds.each do |dvd| %> 
<%= "#{dvd.director}" %> 

我得到的是這樣的:

#<Director id: 93, director: "Brad Bird"> 

我應該得到公正 「的布拉德·伯德」。

有沒有一種方法來消除這個問題,只需要字段名稱而不必更改模型名稱?

+0

您能描述您的DVD和Director型號嗎? – Rahul

回答

2

你可以做兩件事情:

使用領域,如:

<%= "#{dvd.director.director}" %> 

還是一個to_s添加到像模式:

class Director 

    def to_s 
    self.director 
    end 

end 

順便說一句,這是一個有點怪異在Director型號上有director字段

+0

我試過這個'<%​​=「#{dvd.director.director}」%>',並且導演有一個未定義的方法錯誤。大概是第二個。 – kakubei

+0

@kakubei你確定每張DVD都有導演嗎?也許這就是問題......據我所知,我發佈的內容應該可以正常工作。 – lucapette

+0

你會建議我改變模型名稱? – kakubei

相關問題