【问题标题】:Node.js + Mongoose: Model / Schema separated from db logicNode.js + Mongoose:模型/模式与数据库逻辑分离
【发布时间】:2012-08-02 07:44:40
【问题描述】:

我有一个带有 2 个文件的示例 node.js 项目,我想将 Post-object 存储到我的数据库中。 这是我的架构(在 ./schema/post.js 中)

var mongoose = require('mongoose'),
    Schema = mongoose.Schema;

module.exports = function() {
    var Post = new Schema({
        title: String,
        body: String,
        date: Date
    });
    mongoose.model('Post', Post);
};

第二个文件中是数据库逻辑(连接、保存新的post-object并断开连接)

var mongoose = require('mongoose'),
    Post = require('./schema/post.js');

mongoose.connect('mongodb://Thomas-PC/test');

var post = new Post();
post.title = 'asdfafsd';
post.body = 'asdfasdf';
post.date = Date.now();

post.save(function (err) {
  if (err) { throw err; }
    console.log('saved');
  mongoose.disconnect();
});

这不起作用。 我的问题是:如何在单独的文件中创建模型对象的新实例?

【问题讨论】:

    标签: javascript node.js mongodb mongoose require


    【解决方案1】:

    这行不通。你可以让它这样工作:

    module.exports = function() {
    var Post = new Schema({
        title: String,
        body: String,
        date: Date
    });
    return mongoose.model('Post', Post);
    }
    

    还有:

    Post = require('./schema/post.js')()
    

    【讨论】:

      猜你喜欢
      • 2018-07-09
      • 1970-01-01
      • 2021-07-07
      • 1970-01-01
      • 1970-01-01
      • 2013-06-05
      • 1970-01-01
      • 2016-03-02
      • 1970-01-01
      相关资源
      最近更新 更多