如何在基本级别中包含所包含的关系集合字段的条件

时间:2017-03-27 11:29:12

标签: javascript node.js mongodb loopbackjs

我有两个表alert和alertTypes。警报属​​于警报类型,该警报类型作为警报表中的对象ID存储。有一个警报列表,显示警报基本详细信息和警报类型名称从alertTypes集合中获取。有一个搜索过滤器,用户可以通过该过滤器输入将搜索字段的关键字:alertTitle或alertDescription或alertTypeName匹配。但问题是alertTypeName在另一个表中,我们使用include来获取它。如何编写搜索输入关键字的查询:alertTitle或alertDescription或alertTypeName。

  if (typeof keyword !== "undefined") {
var keywordFilter = new RegExp(".*" + keyword + ".*", 'i');
whereFilter =   {"and": 
                    [
                        {status: {"neq": -1}}, 
                        {createdBy: currentUserId},
                        {"or":
                            [
                                {title: { like: keywordFilter} },
                                {message: { like: keywordFilter} }
                            ]
                        }
                    ]
                };
} else {
  whereFilter = {status: {"neq": -1}, createdBy: currentUserId};
}



Alerts.find({where: whereFilter, include: [{relation: 'alertTypes'}], order: ["status ASC", "createdAt DESC"]}, function (err, alerts) {

});

0 个答案:

没有答案