我试图为每个循环真正的@participants集合,如下所示:
- (1..@participants.count).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值感到困惑,无法弄清楚如何搜索解决方案。我应该使用渲染集合,还是有办法为每个循环参与者获取participant.id? THX
答案 0 :(得分:2)
如果参与者是参与者对象的数组,则您不必创建范围,可以执行以下操作:
- @participants.each do |participant|
- user = User.where(:id => participant.id).first
设置rails关系甚至更好。
class Participant
belongs_to :user
end
这样您就可以执行participant.user
我无法告诉你如何专门设置这些关系,因为你没有提供足够的细节。但这应该让你开始。