2012-03-05 1 views
1

イムを働いていない@取得:とobject.attributeは、以下のような各ループ真@participants収集のためにしようと

各ループされたオブジェクトのparticipant.id値を取得する方法について混乱し
- ([email protected]).each do |participant| 
    - @user = User.where(:id => 1).first 
    # @user = User.where(:id => particpant.id).first ==> throws error: ... 
    # (undefined method `id' for 1:Fixnum): 
    #participants 
     #block 
     #image 
      = show_avatar(@user.id) 
      #name 
      = @user.username 

どのように解決策を探したのかを理解することはできません。代わりにレンダリングコレクションを使用するか、参加者ごとにparticipant.idを取得する方法がありますか?あなたは範囲を作成する必要はありませんTHX

答えて

2

、次の操作を行うことができ、参加者は参加者オブジェクトの配列である場合:

- @participants.each do |participant| 
    - user = User.where(:id => participant.id).first 

これは、レールの関係設定にしても良いでしょう。

class Participant 
    belongs_to :user 
end 

あなたは、単にあなたが十分な詳細を与えなかったので、私は特にどのようにセットアップするために、それらの関係をを伝えることはできませんparticipant.user

を行うことができますこの方法。しかし、これはあなたを開始する必要があります。

関連する問題