has_and_belongs_to_many:
在模型上建立关联和关系是否可以接受has_many through:
?例如,我有三个模型,Facility
、Athlete
和Event
。
运动员拥有并属于许多设施,反之亦然。我需要允许设施创建属于设施和运动员的事件。所以我有以下内容。
class Athlete < ActiveRecord::Base
attr_accessible :age, :email, :facility_id, :name
has_and_belongs_to_many :facilities
has_many :events
has_many :facilities, :through => :events
end
class Facility < ActiveRecord::Base
attr_accessible :name, :contact_email, :contact_name, :telephone
has_and_belongs_to_many :athletes
has_many :events
has_many :athletes, :through => :events
end
class Event < ActiveRecord::Base
attr_accessible :athlete_id, :facility_id, :rfd250, :rfd50, :rfd85
belongs_to :athlete
belongs_to :facility
end
我希望这个设置是从Facility#Show,我可以创建与特定设施相关联的新运动员(athletes_facilities 表)。之后,我只能显示与该设施相关联的那些运动员,并为他们创建新事件。
这是解决问题的错误方法吗?