如何触发restheart过滤器?

时间:2016-01-06 16:46:14

标签: restheart

我正在使用angularJs和mongoDB与restheart构建一个网站来构建数据库。

http://goo.gl/xkpCfN

我的输入是用这种方式写的,                 

{{1}}

我的过滤器参数是

{{1}}

事实证明,在激活过滤器并返回结果之前,我必须在所有5个输入区域中输入文本或空格。之后,我可以在一个区域输入,另外4个空白,结果显示。似乎一个输入不足以触发过滤器。

我尝试使用ng-init并使用一个空格而没有一个空格,但它根本不起作用。只有在ng-init中有一个字符时,它才会触发过滤器。

我在想,如果restheart过滤器中的“或”参数能解决问题吗?如果是这样,请告诉我如何写。

我应该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:0)

将几个值传递给过滤器 qparam实际上会使用AND运算符将它们链接起来。

如果你想使用OR尝试类似的东西(我还没有测试过):

$http.get("http://localhost:3000/pupdb/pupdb/?count&pagesize=10&filter={'$or': [{ "description" : { "$regex" : "(?i)\"+$scope.Des+\".*" }}, {  "gene_name" : { "$regex" : "(?i)\"+$scope.GeneN+\".*" }}, {  "site" : { "$regex" : "(?i)\"+$scope.Site+\".*" }}, {  "species" : { "$regex" : "(?i)\"+$scope.Org+\".*" }}, {  "uniprot_AC" : { "$regex" : "(?i)\"+$scope.UniP+\".*" }}]")

请参阅https://docs.mongodb.org/manual/reference/operator/query/or/