【问题标题】:Find ignores Second Value on Collections查找忽略集合上的第二个值
【发布时间】:2014-11-17 09:17:12
【问题描述】:

流星忽略第二个值 {'metadata.diaOferta' : { $in: [diaDeHoy] } },如果我把 {'metadata.diaOferta ' : { $in: [diaDeHoy] } } 它忽略了 {'metadata.tipoMenu' : { $in: [searchMenu] } }

var searchMenu = Session.get("valueMenu")
 var server = TimeSync.serverTime()
 var diaDeHoy = moment(server).locale("es").add(0,'days').format('dddd');
 return Promociones.find({'metadata.tipoMenu' : { $in: [searchMenu] } },{'metadata.diaOferta' : { $in: [diaDeHoy] } });

有没有办法完成这个发现?

回答

用这个替换旧的 find 并像魅力一样工作

 return Promociones.find( {$and:[{'metadata.tipoMenu' : { $in: [searchMenu] } },{'metadata.diaOferta' : { $in: [diaDeHoy] } }]});

【问题讨论】:

    标签: mongodb meteor mongodb-query


    【解决方案1】:
    Promociones.find(
      {'metadata.tipoMenu' : { $in: [searchMenu] } },
      {'metadata.diaOferta' : { $in: [diaDeHoy] } }
    )
    

    应该是

    Promociones.find(
      {
        'metadata.tipoMenu' : { $in: [searchMenu] } ,
        'metadata.diaOferta' : { $in: [diaDeHoy] }
      }
    )
    

    请参阅collection.find 上的Meteor docs

    【讨论】:

    • 我修复了这个 return Promociones.find( {$and:[{'metadata.tipoMenu' : { $in: [searchMenu] } },{'metadata.diaOferta' : { $in: [diaDeHoy] } }]});
    • $and 不是必须的,{$and: [{x: y}, {a: b}]} 等价于{x: y, a: b}
    猜你喜欢
    • 2018-04-13
    • 1970-01-01
    • 1970-01-01
    • 2016-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多