【问题标题】:Mongoose silently fails database writeMongoose 静默失败数据库写入
【发布时间】:2012-12-28 15:41:18
【问题描述】:

我正在尝试使用 node.js、Express 和 MongoDB 编写一个简单的 Web 应用程序。我按照Mongoose documentation 上的说明进行操作,但是当我尝试写入数据库时​​,我的代码似乎静默失败。

我在我的主 app.js 文件中包含以下代码,var db = require("./db")

// db.js

var mongoose = require('mongoose');

var Schema = mongoose.Schema
  , ObjectId = Schema.ObjectId;

var server_name = "localhost";
var db_name = "database";

var db = mongoose.connect('mongodb://'+server_name+'/'+db_name);
log.debug('Connecting to MongoDB "'+db_name+'" at '+server_name);

// Database schemas

var Compo = new Schema({
  name : String,
  description : String
});

var compoModel = mongoose.model('Compo', Compo);

var compoModelInstance = new compoModel();
compoModelInstance.name = "Competition name.";
compoModelInstance.description = "Competition description.";

compoModelInstance.save(function (err) {
  if (err !== null) {
    console.log(err);
  } else {
    console.log("Save successful.");
  }
});

连接已成功创建,因为它显示在 mongod 控制台输出中。 该程序还打印出“保存成功。”,但是当我使用 db.database.find(); 从 mongo shell 检查情况时,我可以看到数据库仍然是空的。

为什么没有保存对象?

【问题讨论】:

  • 您的代码运行良好...检查您是否在寻找正确的位置。如果您仍然遇到同样的问题,请说明您如何连接到 mongo shell 以及您正在发出哪些命令蒙戈壳

标签: node.js mongodb mongoose


【解决方案1】:

我试过你的代码,它对我来说很好用。您是否正在为您的数据寻找正确的位置?

连接您的 mongo shell 并尝试以下操作:

use database;
db.compos.find()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-24
    • 1970-01-01
    • 1970-01-01
    • 2017-03-20
    • 1970-01-01
    • 2017-05-28
    相关资源
    最近更新 更多