我在Heroku上使用Node.js和Express,并使用MongoDB插件。 我的数据库连接工作正常,我可以成功地推入一些数据,但没有其他。MongoDB错误:无法在字符串上创建属性'_id'
这里是数据库连接:
mongodb.MongoClient.connect(mongoURI, function (err, database) {
if (err) {
console.log(err);
process.exit(1);
}
// Save database object from the callback for reuse.
db = database;
console.log("Database connection ready");
// Initialize the app.
var server = app.listen(process.env.PORT || dbport, function() {
var port = server.address().port;
console.log("App now running on port", port);
});
});
我可以成功地把我的Twitter API响应到数据库这样的:
db.collection(TWEETS_COLLECTION).insert(data);
( '数据' 仅仅是一个JSON变量)
但是,当我尝试在同一个方法中将另一个JSON变量推入数据库时,出现错误。代码:
var jsonHash = '{"hashtag":"","popularity":1}';
var objHash = JSON.parse(jsonHash);
objHash.hashtag = req.body.hashtag;
JSON.stringify(objHash);
collection(HASHTAG_COLLECTION).insert(jsonHash);
和错误:
TypeError: Cannot create property '_id' on string '{"hashtag":"myhash","popularity":1}' at Collection.insertMany... ...
任何想法我做错了吗?
谢谢!这工作。我想我不需要任何JSON处理。 – sparkhead95