我可以在我的查询中使用变量代替键名吗?

Can I use variables in place of key names in my query?

本文关键字:变量 我的 查询 我可以      更新时间:2023-09-26

我想这样做:

customers.findOneAndUpdate({'name':data.tenant,data.contentType+'.name':data.name},{data.contentType+'.$.archived':true},function(err,data2){

但是这给了我data.contentType点处的编译错误。

SyntaxError: Unexpected token .

如果我做'files.name'作为一个单一的字符串,它会工作,但data.contentType+'.name'不会编译。

var obj  = {name : data.tenant},
    obj2 = {};
obj[data.contentType+'.name'] = data.name;
obj2[data.contentType+'.$.archived'] = true;
customers.findOneAndUpdate(obj, obj2, function(err,data2){ ...