【发布时间】:2012-03-19 09:35:21
【问题描述】:
我的问题是我想显示当前是该特定组成员的用户的emailids,但我不知道如何做到这一点。我尝试了不同的组合,但我仍然无法做我想做的事......
我通过关联使用has_many如下:
class Group < ActiveRecord::Base
has_many :memberships , :dependent => :destroy
has_many :users, :through => :memberships
end
class Membership < ActiveRecord::Base
belongs_to :user
belongs_to :group
end
class User < ActiveRecord::Base
has_many :memberships, :foreign_key => "user_id",:dependent => :destroy
has_many :groups, :through => :memberships
end
在我的group/show.html.haml 中,我正在运行以下循环,我想显示该特定组成员的emailids:
%table
- @group.memberships.each do |membership|
%tr
%td= membership.user_id.user.emailid
%td= membership.role
在上面的代码中,%td= membership.role 工作正常,这意味着我正在正确运行循环。我无法正确编写%td= membership.user_id.user.emailid 代码。我收到如下错误:
undefined method `user'**
如何访问当前是该组成员的用户的emailid?
【问题讨论】:
-
prasvin ..是的,我也尝试过 dat,但由于未定义的方法“emailid”而出现错误
-
sryy 我的错误...给出了错误的字段名...它的 nw 正在运行 fyn...。谢谢
标签: ruby-on-rails associations has-many-through