尝试从其他文件

时间:2016-07-21 04:15:49

标签: node.js mongodb mongoose

我在尝试包含用单独文件编写的mongoose模型时遇到错误。

  

抛出新的mongoose.Error.MissingSchemaError(name);

     

MissingSchemaError:尚未为模型“购物车”注册架构   使用mongoose.model(名称,架构)

在我的server.js文件中,我的mongo模型是在我调用路由之前定义的。我已经四处查看并发现在路由导致此错误之后定义模型,但这不是我的情况。

//Require db config
require('./app_api/config/model.js');

//Require routes config
var routesAPI = require('./app_api/config/routes.js')

var app = express();

在我的model.js文件中,我需要单独的模式。

var mongoose = require('mongoose');
var dbURI = 'mongodb://localhost/followdata';

mongoose.connect(dbURI);

// CONNECTION EVENTS
mongoose.connection.on('connected', function() {
  console.log('Mongoose connected to ' + dbURI);
});
mongoose.connection.on('error', function(err) {
  console.log('Mongoose connection error: ' + err);
});
mongoose.connection.on('disconnected', function() {
  console.log('Mongoose disconnected');
});

// SCHEMA DECLERATION
require('../models/user');
require('../models/userCart');

所以我不确定问题是什么。

这就是我尝试将购物车模型引入我的用户模型架构的方法。

var mongoose    = require( 'mongoose' );
var jwt         = require('jsonwebtoken');
var crypto      = require('crypto');
var Cart        = mongoose.model('Cart');

var Schema      = mongoose.Schema;

var userSchema = new Schema({ ......... });

在我的userCart.js文件中,我正确导出它。

module.exports = mongoose.model('Cart', cartSchema);

1 个答案:

答案 0 :(得分:1)

如果要在用户模型架构中使用它,则需要在var Cart = mongoose.model('Cart')架构中要求。

因此,在用户模型架构中,您需要pypy -m pip install --upgrade https://storage.googleapis.com/tensorflow/mac/tensorflow-0.9.0-py2-none-any.whl 而不是pypy >>>>import numpy (前一行代码试图创建一个名为Cart的新模型,这是您的错误来自哪里)文件。