SailsJS Waterline中的“not contains”查询

时间:2015-03-31 06:56:35

标签: node.js mongodb sails.js waterline

如果项目不包含特定值,如何创建返回true的not contains查询。如果它是相关的,我正在运行mongoDB。

我可以成功使用contains但是在我介绍not时收到错误。我已经使用findwhere进行了尝试,但两次都获得了相同的正则表达式错误。如果相关,我可以添加确切的错误。

工作版:

model.find({attribute: {'contains': value}})
  .exec(function(err, users) {
    // happy code
});

以下抱怨某些正则表达式错误:

model.find({attribute: {not: {'contains': value}}})
  .exec(function(err, users) {
    // sad code
});

2013年有一个问题提出并关闭了。也许最近发生了变化? https://github.com/balderdashy/waterline/issues/22

2 个答案:

答案 0 :(得分:1)

阿列克谢,我不认为目前水线支持这一点。有一个相关问题被标记为功能,您可以跟踪: https://github.com/balderdashy/waterline/issues/666

答案 1 :(得分:1)

到目前为止,您只能使用Mongodb的原生功能。

 Model.native(function(err, collection) {
     collection.find({
        "attribute" : {
            $ne : value, //Not Equal
            //OR
            $nin : [value1, value2]// Not In
        }
     }).toArray(function(err, docs) {
         if (err) return callback(err, docs);

         res.json(null, docs);
     });
 });