Node.js 使用mongoose模型填充集合

Node.js 使用mongoose模型填充集合,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,我想知道如何更正错误,以从app.js填充User.js文件中声明的集合用户 user.js文件 var mongoose = require('mongoose'), Schema = mongoose.Schema, bcrypt = require(bcrypt), SALT_WORK_FACTOR = 10; var UserSchema = new Schema({ username: { type: String,

我想知道如何更正错误,以从app.js填充User.js文件中声明的集合用户

user.js文件

    var mongoose = require('mongoose'),
    Schema = mongoose.Schema,
    bcrypt = require(bcrypt),
    SALT_WORK_FACTOR = 10;

var UserSchema = new Schema({
    username: { 
        type: String, 
        required: true, 
        index: { unique: true } 
    }

});

module.exports = mongoose.model('User',UserSchema);
 var mongoose = require('mongoose');
require('./models/user');
mongoose.connect('mongodb://localhost/vip');

var models = require('mongoose-models');

var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function callback () {


    var User = models.require('User')();


    var fluffy = new User({ name: 'Eduardo' });


    fluffy.save(function (err, fluffy) {
      if (err) return console.error(err);
      console.log(User);
    });

    User.find(function (err, fluffy) {
      if (err) return console.error(err);
      console.log(User)
    })

});
app.js文件

    var mongoose = require('mongoose'),
    Schema = mongoose.Schema,
    bcrypt = require(bcrypt),
    SALT_WORK_FACTOR = 10;

var UserSchema = new Schema({
    username: { 
        type: String, 
        required: true, 
        index: { unique: true } 
    }

});

module.exports = mongoose.model('User',UserSchema);
 var mongoose = require('mongoose');
require('./models/user');
mongoose.connect('mongodb://localhost/vip');

var models = require('mongoose-models');

var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function callback () {


    var User = models.require('User')();


    var fluffy = new User({ name: 'Eduardo' });


    fluffy.save(function (err, fluffy) {
      if (err) return console.error(err);
      console.log(User);
    });

    User.find(function (err, fluffy) {
      if (err) return console.error(err);
      console.log(User)
    })

});
MongoDB给我的输出错误

C:\Users\edu\Dropbox\Node.js MongoDB\Mongoose>Node app.js

assert.js:92
  throw new assert.AssertionError({
        ^
AssertionError: path must be a string
    at Module.require (module.js:362:3)
    at require (module.js:380:17)
    at Object.<anonymous> (C:\Users\edu\Dropbox\Node.js MongoDB\Mongoose\models\user.js:5:14)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (C:\Users\edu\Dropbox\Node.js MongoDB\Mongoose\app.js:2:1)
assert.js:92
抛出新的assert.AssertionError({
^
AssertionError:路径必须是字符串
at Module.require(Module.js:362:3)
根据需要(模块js:380:17)
at对象。(C:\Users\edu\Dropbox\Node.js MongoDB\Mongoose\models\user.js:5:14)
在模块处编译(Module.js:456:26)
在Object.Module.\u extensions..js(Module.js:474:10)
在Module.load(Module.js:356:32)
在Function.Module.\u加载(Module.js:312:12)
at Module.require(Module.js:364:17)
根据需要(模块js:380:17)
at对象。(C:\Users\edu\Dropbox\Node.js MongoDB\Mongoose\app.js:2:1)

您的require声明(bcrypt)不正确。require包含一个字符串,因此您需要将其放在引号中。它应该是bcrypt=require('bcrypt')

您是否可以编辑您的问题以包含您遇到的错误的详细信息?MongoDB是否实际运行?