Haml通过HAS_AND_BELONGS_TO_MANY对象而不是ID循环


class Team
  include Mongoid::Document
  include Mongoid::Timestamps
  field :name,              :type => String, :default => "My New Team"
  validates_presence_of :name
  has_and_belongs_to_many :users
end

在我的show.haml中,我正在尝试:

 - @team[:users].each do |user|
        %tr
          %td= link_to user.name, user
          %td= user.email

,但问题在于mongo将用户引用为user_ids。所以

  • @team [:user_ids] .east做|用户|

但是现在我必须为每个用户执行查询...在我这样做之前,我只是想知道是否还有另一种循环浏览用户的方法?我正在考虑将一个变量放在名为@user_objects的控制器中,但不确定如何在不遍历所有user_ids并执行find()调用的情况下生成该变量。

尝试此

- @team.users.each do |user|
    %tr
      %td= link_to user.name, user
      %td= user.email

它的工作原理都很好。

最新更新