我如何参考以下内容?
scope :children, where("parent_id = ?", self.id)
在这种情况下,自我似乎不起作用
通常范围是在类之外链接的,如下所示:
Foo.recent_entries.posts # Or whatever.
你需要一个lambda范围来获得相同的行为:
scope :children_of, lambda { |o| where("parent_id=?", o.id }
我假设您正在尝试获取特定实例的子项:
parent.children
这将是一个实例方法,但是:这看起来像一个基本的self-referencing association,而不是需要范围的东西。
如果你正在制作树,那里有宝石,例如closure-tree,ancestry等。