2

我正在努力为 Mongoose 模型创建模型函数。我在这里定义了一个方法:

Schema.listingSchema.method('applyPrice', function() {
  this.price = priceFromString(this.title);
});

我在这里访问它:

var listing = new Listing();

// assign all relevant data
listing.title = title;
...

// pull the price out of the title and description
listing.applyPrice(listing);

在哪里

Listing = mongoose.model('Listing', Schema.listingSchema);

我收到错误:

TypeError: Object #<model> has no method 'applyPrice'

任何人都可以看到这个问题吗?

4

1 回答 1

0

你是如何定义你的架构的?通常你会做这样的事情:

var listingSchema = new mongoose.Schema({
  title: String
});
listingSchema.method('applyPrice', function() {
  this.price = priceFromString(this.title);
});

mongoose.model('Listing', listingSchema);
var Listing = mongoose.model('Listing');

var listing = new Listing({ title: 'Title' });
listing.applyPrice();
于 2011-07-31T00:02:43.603 回答