0
我的轨道应用程序中有'多'案例'模型多对一多态轨道协会。有很多事情都有案例,所以我通过做'thing_that_has_a_case.case'来查看每件事情的情况。多态轨道协会(倒退?)
但是,我试图去其他方式,我不知道如何。我有权访问该案例对象,但我想访问正在被包装的东西。轨道有办法做到这一点?我可以用一个丑陋的开关来做到这一点,它为每种类型的对象执行不同的sql查找,但我希望导轨会有更好的方法。谢谢!
我的轨道应用程序中有'多'案例'模型多对一多态轨道协会。有很多事情都有案例,所以我通过做'thing_that_has_a_case.case'来查看每件事情的情况。多态轨道协会(倒退?)
但是,我试图去其他方式,我不知道如何。我有权访问该案例对象,但我想访问正在被包装的东西。轨道有办法做到这一点?我可以用一个丑陋的开关来做到这一点,它为每种类型的对象执行不同的sql查找,但我希望导轨会有更好的方法。谢谢!
您可以添加这样的事情你的情况的模型:
belongs_to :parent, :polymorphic => true
..这假设你有场parent_id
和parent_type
你的情况的模型(这取决于你如何命名改变第一个参数belongs_to
这些关联字段)。一旦你有这个,你应该能够参考case.parent
给定的案例。
而且,我只想澄清,这种关系的一个侧面具有类似:
has_many :cases, :as => :parent, :dependent => :destroy
(我假设你已经有一个工作根据您的描述)
谢谢,现在的作品。 – Anon 2009-08-05 21:44:16