动态检索嵌套的多态相关对象?

时间:2013-09-01 01:08:13

标签: ruby-on-rails ruby object activerecord polymorphism

有没有办法通过他们的血统遍历关系?

换句话说,如果你有三个或更多个多态相关对象的层次结构,是否有任何相对的方法来检索两度以上的对象,因为我不知道它的类?

例如:

假设我有图像,这对学生和教师来说是多态的。让我们说学生和老师对教会和大学等不同的对象都是多态的。

如何轻松抓住“教堂”或“大学”对象并加载图像?

1 个答案:

答案 0 :(得分:1)

简短的回答是你不能这样做。也就是说,您无法在多态关联中建立多次通过关联。

但是,如果将范围限制为特定的类/表,则可以建立这样的关联。因此,您可以找到(并且急切地)所有教师的大学,以获得特定的图像或图像关系。但是,您无法扩展查询,以您希望的方式查看多个潜在的表。

当然,如果愿意,你总是可以写一个查询来手工完成......