最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

导出猫鼬数据库模块

网站源码admin46浏览0评论

导出猫鼬数据库模块

导出猫鼬数据库模块

我需要导出我的 mongoose 数据库模块,这样我就可以在我的程序中的每个模块中使用我定义的模型。

例如,我的 database.js 模块看起来像这样:

var mongoose = require('mongoose'),
    db = mongoose.createConnection('mongodb://localhost/newdb'),
    Schema = mongoose.Schema;

db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function callback () {
    console.log("Connected to database newdb");

    var dynamicUserItemSchema = new mongoose.Schema({
      userID: Number,
      rank:  Number,
    });

    var staticUserItemSchema = new mongoose.Schema({
        _id: Schema.Types.Mixed,
        type: Schema.Types.Mixed,
    });

    var DynamicUserItem = db.model('DynamicUserItem', dynamicUserItemSchema);
    var StaticUserItem = db.model('StaticUserItem', staticUserItemSchema);

});

我希望能够将

var db = require('../my_modules/database');
添加到我的程序的任何其他模块中 - 这样我就可以使用这样的模型:

db.DynamicUserItem.find();
item = new db.DynamicUserItem({});

是否可以使用“导出”或“模块导出”来做到这一点?谢谢。

回答如下:

我通常不使用

error
open
事件,而是按照 mongoosejs 的示例创建到我的数据库的连接。使用示例,您可以执行以下操作。

db.js

var mongoose = require('mongoose');
var db = mongoose.createConnection('localhost', 'test');

var schema = mongoose.Schema({ name: 'string' });
var Cat = db.model('Cat', schema);

module.exports = Cat; // this is what you want

然后在你的 app.js 中你可以做类似的事情

var Cat = require('db');

var peter = new Cat();

希望有帮助!

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论