【发布时间】:2018-07-13 17:49:45
【问题描述】:
我正在使用 updateOne() 查询来更新我的 Db 中的某些内容。
根据函数返回的值,我将更新不同的字段。所以我尝试动态生成字段以避免多次编写相同的函数。
我的想法是以这种方式将字段存储在模板字符串中:
const expField: string = `teams.${newEvent.data.team}.${newEvent.data.position}`;
然后我用它创建我的查询:
query = {
$push: {
evtsGame: newEvent
},
$set: {
expField: goalValue.exp,
updatedAt: moment().toISOString()
},
$inc: {
scoreField: goalValue.score
}
};
但是在测试查询后,我意识到它创建了一个新字段 'expField' 而不是 'teams.team1.attacker' 之类的东西
如何动态生成我的姓名字段?
【问题讨论】:
-
@SergioTulentsev 它有效!谢谢你:)
-
我会发布这个作为答案然后:)
-
只是用 [expField] 做的,而不是 [$set]
-
哦,太好了。不知道。
标签: node.js mongodb typescript