![](/img/trans.png)
[英]Trying to save nested document in MongoDB using mongoose on Nodejs
[英]Trying to save data to a collection with mongoDB, nodejs and mongoose
我似乎無法弄清楚如何使用 mongoDB、mongoose 和 nodejs 將文檔保存到集合中。 我正在嘗試保存一些從 API 返回的數據到我在 mongodb 地圖集中制作的集合中,但我終生無法弄清楚如何做到這一點。
我嘗試使用 mongoose 制作架構,並嘗試通過該架構進行保存並嘗試直接連接到數據庫,但我所做的似乎沒有任何效果。
這是我的架構
const mongoose = require('mongoose');
const twitterStateDataSchema = mongoose.Schema({
stateName: Number
});
module.exports = mongoose.model('TwitterStateData', twitterStateDataSchema);
這是我對 Schema 的調用:
TwitterStateData.insertOne(statesMap).then(test => {
console.log(test);
})
這是我與數據庫的連接:
mongoose.connect(process.env.MONGO_DB)
.then(() => {
console.log('Connected to Sport Stakehouse database!')
})
.catch(() => {
console.log('Connection Failed!')
})
這是我的 env.json 中的內容減去秘密內容:
.mongodb.net/gameData?retryWrites=true&w=majority
我正在嘗試發送此 object:
{ IA: 4, undefined: 7, MI: 1, FL: 1, WV: 1, TX: 1, MN: 1, MO: 1 }
我收到錯誤 insertOne() is not a function 但我認為這不是我的問題。
根據Mongoose 文檔,您可以使用.create
或.save
。 .save()
是來自 Model 實例的方法, .create()
是直接從 Model 調用的方法調用,根據需要使用。
使用創建:
const data = { IA: 4, undefined: 7, MI: 1, FL: 1, WV: 1, TX: 1, MN: 1, MO: 1 };
TwitterStateData.create(data, function (err, small) {
if (err) return handleError(err);
// saved!
});
使用保存:
const object = new TwitterStateData(yourData);
object.save(function (err) {
if (err) return handleError(err);
// saved!
});
注意:您需要打開連接才能使功能正常工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.