Я пытаюсь создать схему Mongoose, которая содержит поле, которое автоматически увеличивается в следующем формате: number-year
.Так, например, если я создаю 3 документа в этом году (2018), они должны иметь это поле со значениями: 1-2018, 2-2018, 3-2018, ...
Я использую функцию estimatedDocumentCount
для подсчета количества документов в коллекции,Это пример моего кода:
var db = mongoose.connection;
var FooSchema = new mongoose.Schema({
code: {
type: String,
index: true,
match: /\d{1,}-\d{4}/, // Code is in format nr-yyyy
default: function() {
return Foo.estimatedDocumentCount({})
.then(count => `${count}-${(new Date()).getFullYear()}`)
.catch(error => console.error(error))
}
}
});
var Foo = module.exports = mongoose.model('Foo', FooSchema);
К сожалению, я получаю следующую ошибку:
TypeError: Foo.estimatedDocumentCount is not a function
Это package.json
:
"mongodb": "^2.2.33",
"mongoose": "^4.13.2",
Заранее спасибо.