首先,我对NoSQL数据库很陌生,所以如果我使用了错误的术语,请原谅。我正在使用schedulejs模块将提醒存储在Mongo数据库中(必需)。由于所有提醒都具有相同的工作名称(“发送提醒”),并且我没有将生成的_id存储在我自己的关系数据库中,因此我试图通过查找嵌套属性之一来查找MongoDB中的特定对象在数据字段中,在这种情况下,我在存储之前生成的提醒的UUID。
这就是我试图获得一份特定工作的方式,但它没有返回任何东西。
let thisJob = await agenda.jobs({data: {reminder_id: reminderId}});
这是在MongoDB中创建后的作业的attr值
attrs:
{ _id: 5b86be364f8be75149a3c68e,
name: 'send reminder',
data: [Object],
type: 'normal',
priority: 0,
nextRunAt: 2018-08-29T17:15:00.000Z,
lastModifiedBy: null }
主要问题是如何通过搜索存储在data属性中的对象内部来找到工作?
(我可以想到其他方法来最终实现我追求的目标,但我更喜欢优化的东西)
答案 0 :(得分:0)
这应该做到:
let thisJob = await agenda.jobs({'data.reminder_id': reminderId});