Javascript 猫鼬不工作?

Javascript 猫鼬不工作?,javascript,node.js,mongoose,Javascript,Node.js,Mongoose,我正在使用mongooserandom包从我的MongoDB数据库中获取随机项。这是我的密码: // Bring Mongoose into the app var mongoose = require( 'mongoose' ); var random = require('mongoose-random'); var DBNAME = 'test'; var COLLNAME = 'koleksigj'; var DBURI = 'mongodb://localhost/' + DBNAM

我正在使用
mongooserandom
包从我的MongoDB数据库中获取随机项。这是我的密码:

// Bring Mongoose into the app
var mongoose = require( 'mongoose' );
var random = require('mongoose-random');

var DBNAME = 'test';
var COLLNAME = 'koleksigj';
var DBURI = 'mongodb://localhost/' + DBNAME;

// Connect to DB
mongoose.connect(DBURI);

// Create the schema
var quizSchema = new mongoose.Schema({ title: String, body: String });
quizSchema.plugin(random);

// Make the model
var Quiz = mongoose.model('Quiz', quizSchema);

// Make query
Quiz.findRandom(function (err, quiz) {
  console.log(quiz);
})

// CONNECTION EVENTS
// When successfully connected
mongoose.connection.on('connected', function () {
  console.log('Mongoose default connection open to ' + dbURI);
});

// If the connection throws an error
mongoose.connection.on('error',function (err) {
  console.log('Mongoose default connection error: ' + err);
});

// When the connection is disconnected
mongoose.connection.on('disconnected', function () {
  console.log('Mongoose default connection disconnected');
});

// If the Node process ends, close the Mongoose connection
process.on('SIGINT', function() {
  mongoose.connection.close(function () {
    console.log('Mongoose default connection disconnected through app termination');
    process.exit(0);
  });
});
我的
mongoose random
用法似乎与文档类似

但是,我收到以下错误消息:

hfz:mong-final Hfz$ node all.js

/Users/Hfz/Dev/nodejs/mong-euro/mong-final/all.js:23
Quiz.findRandom(function (err, quiz) {
     ^
TypeError: Object function model(doc, fields, skipId) {
    if (!(this instanceof model))
      return new model(doc, fields, skipId);
    Model.call(this, doc, fields, skipId);
  } has no method 'findRandom'
    at Object.<anonymous> (/Users/Hfz/Dev/nodejs/mong-euro/mong-final/all.js:23:6)
    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 Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:902:3
hfz:mong final hfz$node all.js
/Users/Hfz/Dev/nodejs/mong-euro/mong-final/all.js:23
quick.findRandom(函数(err,quick){
^
TypeError:对象函数模型(文档、字段、skipId){
如果(!(此实例为模型))
返回新模型(单据、字段、skipId);
Model.call(this、doc、fields、skipId);
}没有“findRandom”方法
at对象。(/Users/Hfz/Dev/nodejs/mong-euro/mong-final/all.js:23:6)
在模块处编译(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)
位于Function.Module.runMain(Module.js:497:10)
启动时(node.js:119:16)
在node.js:902:3

如果您看一下中的示例,它与NPM上的示例略有不同

将添加插件到
quizSchema
的行更改为调用
random()

quizSchema.plugin(random());

如果您看一下中的示例,它与NPM中的示例略有不同

将添加插件到
quizSchema
的行更改为调用
random()

quizSchema.plugin(random());

如果您看一下中的示例,它与NPM中的示例略有不同

将添加插件到
quizSchema
的行更改为调用
random()

quizSchema.plugin(random());

如果您看一下中的示例,它与NPM中的示例略有不同

将添加插件到
quizSchema
的行更改为调用
random()

quizSchema.plugin(random());