我被卡住了,这个问题肯定很简单,但是我在文档中找不到解决方案。
我有一些树形结构和一个子查询的where子句,我必须使用"exists"子查询来过滤孩子节点:
current_node.children.as("children_nodes").where(Node.where(...).exists)
Node.where.clause已经连接到children_nodes,如果我使用两个不同的模型,它可以正常工作。但是我如何使用别名?上面的代码将导致:
NoMethodError (undefined method `where' for #<Arel::Nodes::TableAlias
很基础的问题,但是我还不明白(因为我对arel还不熟悉)。
current_node.children.as("children_nodes").Node.(where(...).exists)
,虽然未经测试。 - Pavan