2014-11-09 2 views
2

Я хотел бы добавить некоторые дополнительные свойства в поля схемы mongoose и получить к ним доступ позже.Добавление метаданных в поля mongoose

Предположим, у меня есть схема, которая выглядит так:

var dauStatsSchema = { 
    dtKey:{type:Number}, 
    date:{type:Date}, 
    appId: {type: String}, 
    users: {type: Number} 
}; 

Теперь я хотел бы добавить некоторые метаданные для каждого поля, что-то вроде этого:

var dauStatsSchema = { 
    dtKey:{type:Number, selector: {$month: '$date'} }, 
    date:{type:Date, selector: {$week: '$date'} }, 
    appId: {type: String, selector: {$dayOfYear: '$date'}}, 
    users: {type: Number} 
}; 

Вы заметите selector свойства, которые я добавил, и хотел бы получить доступ к ним из этой модели, выполнив что-то вроде этого:

mongoose.model('dauStats').dtKey.selector, mongoose.model('dauStats').date.selector , mongoose.model('dauStats').appId.selector и т. Д.

Любые идеи?

Спасибо!

ответ

2

Хотя я в конечном итоге принимает другое направление, я нашел способ доступа к данным в вопросе, просто делая:

myModel.prototype.schema.tree.dtKey.selector 

Если есть «понятнее» способ достижения такой же - я бы с удовольствием слышать.

Спасибо!

Смежные вопросы