我有这样的疑问。例如,我有3个模型:用户,项目,连接:
class User < ActiveRecord::Base
has_many :connections
has_many :tasks, :through => :connections
end
class Project < ActiveRecord::Base
has-many :connections
has_many :users, :through => :connections
end
class Connection < ActiveRecord::Base
belongs_to :user
belongs_to :project
enum status: [:manager, :developer]
end
问题是:如何访问&#34;状态&#34;模型连接中的属性? 例如,我参加了一个项目:
@project = Projects.last
然后我从这个项目中获得用户,但我也对他们在项目中扮演的角色感兴趣:
@project.users.each do |u|
u.name
u.connection.role #Here I get an error `undefined method `connection'`
end
当然,u.role不起作用,因为没有这样的属性&#34;角色&#34;对于用户。 我想显示和编辑属性&#34; Role&#34; 有什么想法吗?
答案 0 :(得分:0)
我用这种方式解决了这个问题: user.connections.find_by_project_id(@ project.id).role%&gt;