0

我有两个模型与一个共同的父母有一个 belongs_to 关系。目前我正在做这样的事情;

child.parent.other_children

当我这样做时,它会为父级进行 SELECT 查询,即使我什至不需要它,因为我已经有了parent_idin child。我想知道是否有比这更好的写法;

OtherChildren.find :parent_id => child.parent_id
4

1 回答 1

0

你这样做的方式是不可能的。主要是因为从面向对象的观点加载父级并访问它的方法是您正在做的事情。

但是,稍微改变一下你的视图,你正试图other_children从一个child对象访问。为什么不在那个类上创建一个新方法呢?

def siblings
  OtherChildren.find :parent_id => self.parent_id
end
于 2012-09-05T19:03:02.940 回答