【问题标题】:WaterlineJS/SailsJS: Query array attribute contains a valueWaterline JS/Sails JS:查询数组属性包含一个值
【发布时间】:2015-01-20 03:23:22
【问题描述】:

假设我有一个模型属性tags: ['tag1', 'tag2', 'tag3']。我想找到具有特定标签的模型。我该怎么做?

似乎 contains 包含一个字符串。不是数组包含我需要的吗?

【问题讨论】:

    标签: sails.js waterline


    【解决方案1】:

    您可以使用$in 功能,该功能允许您从数组中进行过滤。 你可以写这样的查询

        Model.find({
        }).where({
           tags : {
            $in : tagArray
           }
        }).exec(function(err, data) {
          if(err) {
           console.log(data);
          } else {
           console.log(data);
          }
        });
    

    【讨论】:

    • 这仅适用于特定的适配器或数据库吗?我尝试在使用“sails-memory”的测试中使用它,但它似乎不起作用。
    【解决方案2】:
       ModelName.find({tags: 'tag1'}).exec(function(err, tags){
            if (err){
               //handle error
               }
    //tags is array of all data containing tags = 'tag1'
            console.log(tags);
            });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-18
      • 1970-01-01
      • 2015-11-21
      • 2020-07-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多