У меня есть следующий код node.js, где он подключается к mongoDB, и я хотел бы вставить сообщение, отображаемое на консоли node.js, в коллекцию под названием «mytable». Проблема, с которой я сталкиваюсь, заключается в том, что она успешно подключается к mongoDB, а также вставляет сообщение, которое отображается на консоли node.js, но вместо того, чтобы указывать как один полный документ, он вставляет в качестве символов. почему это так происходит? Просьба помочьinsterting documents in mongoDB using node.js
var mongo = require("mongodb");
var dbhost = "127.0.0.1";
var dbport = mongo.Connection.DEFAULT_PORT;
var db = new mongo.Db("mydb", new mongo.Server(dbhost, dbport, {}), {safe: true});
db.open(function(error){
status = ("db connected at" + dbhost + " : " + dbport);
console.log(status);
db.collection("mytable",function (error,collection){
collection.insert(status, function(error){
if (error){
console.log("Error : ", error.message);
} else {
console.log("Inserted in to database");
}
});
});
});
мой узел вывода консоли дисплей в
db connected at127.0.0.1 : 27017
Inserted in to database
при проверке 'MYTABLE' Монго оболочки с командой
db.mytable.find.forEach(printjson)
он показывает следующий вывод
{
"_id" : objectId("5207741d193770459f068317"),
"0" : "d",
"1" : "b",
"3" : " ",
"4" : "c",
"5" : "o",
"6" : "n",
"7" : "e",
"8" : "c",
"9" : "t",
"10" : "e",
"28" : "7",
"29" : "0",
"30" : "1",
"31" : "7"
}
Пожалуйста, помогите iw ant только одна запись, т. е. «db, подключенная к 127.0.0.1: 27017», чтобы быть включенной в mytable в качестве единого документа.
Как добавить системное время в момент входа в базу данных для. – user2672180
@ user2672180 mongo '_id' содержит временную метку, поэтому с помощью' doc._id.getTimestamp() 'вы получаете это бесплатно - вы не хотите добавлять что-либо в свой документ – soulcheck