has_many问题,通过关联

时间:2015-02-13 16:15:22

标签: ruby-on-rails has-many-through

出于某种原因,我通过协会的行为并不起作用。这是我的模特:

class Interest < ActiveRecord::Base

  has_many :evints
  has_many :events, through: :evints
  has_many :images, through: :events

end

class Event < ActiveRecord::Base

  has_many :evints
  has_many :images
  has_many :interests, through: :evints

end

class Evint < ActiveRecord::Base

  belongs_to :events
  belongs_to :interests

end

Evints表有三列:interest_id,event_id和id。

当我调用@ interest.events时,我收到错误消息

uninitialized constant Interest::Events

显然,如果@ interest.events被读作常量,那么关联就会出现问题!

有没有人有任何想法?

谢谢!

1 个答案:

答案 0 :(得分:1)

检查您的Evint类,它应该是:

class Evint < ActiveRecord::Base
  belongs_to :event
  belongs_to :interest
end

另一方面,我认为Evint并不是一个非常好的名字。它建议您使用EventInterest,并将表命名为event_interests。