2011-08-16 59 views
0

我從數據庫加載唯一的行。數據存儲在變量(例如)@data中。 考慮,如果我想顯示值從數據庫得到的,我必須做以下幾點:Rails 3 - 如何使用從數據庫獲取的數據

<% @data.each do |d| %> 
     <%=d.name %> 
    <%end%> 

,我想問你 - 存在什麼更好的辦法?我認爲這是一個有點傻的只行使用循環......我想是這樣

<%= @data.name %> 
OR 
<%= @data.each.name %> 

但在這兩種情況下,我得到了錯誤的語法錯誤信息......

所以我的問題 - 可以讓顯示數據更優雅一點?

編輯:我的查詢:@data = Car.includes(:輪胎)。凡( 「參數1 =?」,則params [:參數1])

回答

1

如果你已經裝載了多個模型(行),那麼循環是顯示每個值的自然構造。如果你真的在一個班輪設置,你可以使用一些Ruby的列表內涵:

<%= @data.map(&:name).join(" ") -%> 
+0

是啊,我是從2個模型加載數據,具體包括:'@data = Car.includes(:輪胎)。凡(「參數1 =?「,params [:param1])' – user1946705

1

我認爲你是加載.all代替.first

在您的控制器,

@data = Data.where(:some => 'condition').first 

@data = Data.find(params[:id]) 
相關問題