编写了一个触发器函数,当new_list
集合中有插入内容时,该函数将全部文档插入到我的集合listingsAndReviews
中。
exports = function(changeEvent) {
const fullDocument = changeEvent.fullDocument;
const collection = context.services.get('Cluster0').db("sample_airbnb").collection("new_list");
return collection.insertMany([fullDocument])
.then(result => {
console.log(`Successfully inserted ${result.insertedIds.length} items!`);
return result;
})
.catch(err => console.error(`Failed to insert documents: ${err}`));
};
在将数据插入new_list集合时,是否可以选择仅特定的必需列。在这种情况下,我只需要插入名称和cart_id,而忽略其他名称。
我的样本收集列名称:
name - string
cart_id - objectid
number - string
address - string
您可以从fullDocument
中提取所需的属性,然后插入此新对象:
return collection.insertMany([{name: fullDocument.name, cart_id: fullDocument.cart_id }])
Afaik,没有其他方法可以对insert
方法上的属性进行“过滤”。还请注意,由于您只插入一个文档,因此可以在此处使用insertOne
而不是insertMany
。