生产Mongoose MongoDB

时间:2018-02-15 16:07:53

标签: node.js mongodb mongoose

我有一个非常奇怪的问题,即当NODE_ENV=production时,即使连接到localhost,Mongoose也不会对模型定义文件之外的集合执行查询。

分贝/ default.js

const mongoose = require('mongoose');
module.exports = {
    connect(url) {
        mongoose.connect(url);
    }
};

app.js

const db = require('./db/default');
db.connect(config.get('mongoDB.uri'));

User.model.js

const mongoose = require('mongoose');

const schema = new mongoose.Schema({
    // ...
});

const User = mongoose.model('User', schema);

module.exports = User;

test.js

// This file is required by a route
const User = require('./models/User.model');

User.find({})
    .then(response => console.log(response))
    .catch(err => console.log(err));

所有这些在NODE_ENV=dev时都能正常运行,但只要NODE_ENV=productionUser.find({})...就无法运行。没有错误,没有成功,它只是没有运行。

如果我记录User = require('./models/User.model'),它是一个Mongoose对象。

如果我在User.find({})...中运行 User.model.js 文件中的production代码,那也可以。

我完全不知道为什么这不起作用。

0 个答案:

没有答案