0
我的meteor.js应用程序中有问题,mongo更加精确。当我试图让我的Meteor.JS应用此更新查询它不工作,它抛出这个错误:MongoDB查询不适用于Meteor.js
Exception while invoking method 'deleteNotifications' MongoError: '$set' is empty. You must specify a field like so: {$mod: {<field>: ...}}
他抱怨说我没有使用$设置蒙戈国防部,但这里的东西,我不想使用它,你可以在下面看到我的查询(我正在使用coffeescript)。
Messages.update
_id:
$in: messagesIds
,
$push:
readByReceivers: Meteor.userId()
,
multi: true
所有需要的值都存在,最有趣的是如果我使用$ set而不是$ push,则会处理查询。
当我尝试内部蒙戈流星应用程序,然后在同一查询它的工作完美:
db.messages.update({_id: {$in: ["x6PpcE829GsWarjB5"]}},{$push: {readByReceivers: "nx7XkXsmeMh6pz5n3"}},{multiple: true})
为什么流星强迫我使用$设置?
您可以使用一个变量来保存Meteor.userId()函数的值吗? – chridam
所有需要的值都存在,持有Meteor.userId()内部变量,然后使用该变量不会改变任何内容,错误保持不变。 – MatthewK
工作示例:我项目中的'Item.update {_id:itemId},$ push:users:user._id' – none