2013-04-27 104 views
2

鑑於這種Category架構貓鼬GET _id參考模型的,不管它填充或不

{ 
    title: String, 
    parent: { 
     type: Schema.Types.ObjectId, 
     ref: 'Category', 
     required: true 
    } 
} 

現在,如果我有Category的實例,但我不知道是否parent已被填充或者不需要,我需要parent_id(實際上只是十六進制表示)。

有沒有更好的方法來做到這一點:?

var parentID = (category.parent._id || category.parent).toString(); 

回答

1

我不認爲有更好的方法。我確實把它放在虛擬中。

schema.virtual('parentID').get(function() { 
    return this.parent._id || this.parent; 
}) 

如果需要多種方案,可以很容易地製作插件。