这可能吗?
在事件系统中,事件可以有多次。 (即,如果是3天的活动,每天都是在不同的时间)。每次都有一个与之相关的地方。最后,每个地方都有一个与之相关的地址。现在,我可以通过我的事件模型引用这些地址吗?
我在想这样的概念:
class Event < ActiveRecord::Base
has_many :TimePlaces
has_many :Places :through => :TimePlaces
has_many :Addresses :through => :PlaceAddresses :through => :Places
答案 0 :(得分:4)
这是正确的语法。
class Event < ActiveRecord::Base
has_many :time_places
has_many :places, :through => :time_places
has_many :addresses, :through => :places
尽管这应该有用,但您可能需要重新设计数据库。运行具有太多联接的查询需要进行密集的数据库细化,并且会大大降低应用程序的速度。