2012-12-19 79 views
6

我對rails有如下簡單的問題。rails:使用特定的html視圖呈現模型的集合

讓我說我有一個模型用戶。 在視圖中,如果我做:

<%= render User.all %> 

文件視圖在視圖/用戶/ _user.html.erb將被調用,打印每個用戶。

我該如何改變它以使用特定的視圖? 我需要類似的東西:

<%= render :data=>User.all :template=>"user/_user_2ndview.html"%> 

任何幫助? 在此先感謝

+0

你確實有一個名爲'@ User'的實例變量,或者是一個錯字? –

+0

@Daniel更正 – Mateu

回答

8

可以使用collection選項:

<%= render :collection => User.all, :partial => "users/user2ndview", 
      :as => :user %> 

的觀點必須被放置在視圖/用戶/ _user2ndview

有關詳細信息,請參閱Rails guides on rendering collections

+0

我得到錯誤:未定義的局部變量或方法'用戶'爲#<#:0xb5da7608> 原因在_user_2ndview.html我使用<%= user.name%> 我該如何才能告訴渲染將用戶設置爲var的用戶? – Mateu

+0

更新了我的答案。 –

+0

<%= render:collection => User.all,:template =>「user/_user_2ndview.html」as:「user」%> – RakuN

相關問題