Quantcast
Channel: CNode:Node.js专业中文社区
Viewing all articles
Browse latest Browse all 14821

在为Schema创建speak方法,为什么之后的代码没法调用这个speak方法?

$
0
0

源码如下: // getting-started.js var mongoose = require(‘mongoose’); mongoose.connect(‘mongodb://localhost/test’);

var db = mongoose.connection; db.on(‘error’, console.error.bind(console, ‘connection error:’)); db.once(‘open’, function() { // we’re connected! });

var kittySchema = mongoose.Schema({ name: String });

var Kitten = mongoose.model(‘Kitten’, kittySchema);

var silence = new Kitten({ name: ‘Silence’ }); console.log(silence.name); // ‘Silence’

// NOTE: methods must be added to the schema before compiling it with mongoose.model() kittySchema.methods.speak = function () { var greeting = this.name ? "Meow name is " + this.name : “I don’t have a name”; console.log(greeting); }

var Kitten = mongoose.model(‘Kitten’, kittySchema);

var fluffy = new Kitten({ name: ‘fluffy’ }); fluffy.speak(); // “Meow name is fluffy”

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

Kitten.find(function (err, kittens) { if (err) return console.error(err); console.log(kittens); })

Kitten.find({ name: /^fluff/ }, callback);

错误如下: untitled1.png


Viewing all articles
Browse latest Browse all 14821

Trending Articles