给出RethinkDB中的示例文档,如下所示
[{id: "1", tags: ["alpha", "bravo", "charlie"]},
{id: "2", tags: ["delta", "echo", "foxtrot"]}]
我知道我可以使用RethinkDB数据资源管理器轻松过滤tags数组:
r.db("mydb").table("mytable").filter(r.row("tags").contains("delta"));
但是,我在尝试使用rethinkdb-elixir客户端时遇到困难。我认为以下内容将检索它:
q = Query.table("mytable")
q = Query.filter(q, %{tags: Query.contains(q, "delta")})
然后我想也许一个函数会像这样工作:
q = Query.filter(q, lambda fn (doc) ->
# ???
end)
但此时我似乎遇到了死胡同。
感谢您的帮助!
答案 0 :(得分:0)
非常感谢rethinkdb-elixir repo提供答案的主要贡献者:
q = Query.filter(q, lambda fn (doc) ->
doc["tags"] |> contains("delta")
end)