有没有办法每当我在monodb数组中推送一个新元素时,会添加一个普通的_id?我记得mongoose自动做了类似的事情,但现在我使用mongodb的原生js,似乎没有插入任何_id。
示例:
chats.updateOne({_id: chat_id},
{$push: {messages:
{
message: data.message,
date: new Date(),
}}},
function(err, response){}
)};
执行时,messages数组应该有常规的_id字段,消息和日期。目前它只创建消息和日期。
答案 0 :(得分:2)
您可以使用ObjectId():
chats.updateOne({_id: chat_id},
{$push: {messages:
{
message: data.message,
date: new Date(),
_id: ObjectId()
}}},
function(err, response){}
)};