有条件地建立一个Google Datastore查询

问题描述 投票:0回答:1

我将如何去程序化地构建一个google数据存储查询?我正试图在Rails应用中根据表单中的参数建立一个过滤器。

用google docs的例子。

query = datastore.query("Task")
             .where("done", "=", false)
             .where("priority", ">=", 4)
             .order("priority", :desc)

如果想改变这一点,使'done'同时包含true &false两个值,我已经尝试了各种变化,但没有任何乐趣。

query = datastore.query("Task")
         .where("done", "=", false) unless params['done'] == 'ALL'
         .where("priority", ">=", 4)
         .order("priority", :desc)

我需要对所有的where子句都能做到这一点。

ruby-on-rails ruby google-cloud-datastore
1个回答
0
投票

由于datastore不支持OR操作符,你必须执行多个查询,然后将结果合并。

一个检查.where("done", "=", false),另一个检查.where("done", "=", true)。

© www.soinside.com 2019 - 2024. All rights reserved.