Neo4j gem - 在一个属性中查询多个参数



我甚至不确定这个标题是否是最好的描述。

我正在通过事件表单构建一些基本的过滤功能。事件具有来自选择下拉列表的类别。

现在,当您要过滤时,可以通过复选框选择要显示的类别。

我有点困惑如何做到这一点。是否可以在一个查询中完成所有操作?还是每个类别将其分为 1 个?

我的旧查询是这个current_user.friends.events(:event, :rel).where("rel.admin = {admin_p} AND event.detail = {detail_p}").params(admin_p: true, detail_p: true).pluck(:event)

在这种情况下,我需要类似 event.category = category1, category2, cateogry3 .显然不是这样写的。实现这一目标的方法?

在密码中,IN允许您匹配数组中的结果。

MATCH (u:User)-[r1:INVITED_TO]->(e:Event) WHERE e.uuid IN [1, 2, 3, 4, 5] RETURN e

这会将事件与该数组中的任何 uuid 属性匹配。在 Ruby gem 中,如果您在 where 方法中使用数组,则会在 QueryProxy 中自动为您处理此问题。

current_user.events.where(category: [1, 2, 3, 4, 5])

在表单中,确保每个复选框的值与其 ID 相对应。 将这些 ID 放入数组中并搜索,如上所示。

相关内容

  • 没有找到相关文章

最新更新