Mongoose - 是否可以使用架构路径访问对象属性?

时间:2013-07-04 06:55:40

标签: object path schema mongoose

作为标题。 vote下有一个对象属性ActionSchema。我想访问vote.type,但path('vote.type')不起作用。

ActionSchema = new Schema({
  vote: {
    type: String
  }
});

// TypeError: Cannot call method 'enum' of undefined
ActionSchema.path('vote.type').enum(['upvote', 'downvote']);

1 个答案:

答案 0 :(得分:1)

问题是vote.type不是路径vote。因此,如果要修改vote属性,则需要使用ActionSchema.path('vote')

添加枚举:

ActionSchema.path('vote').enum('upvote', 'downvote');

*请注意,您不会将枚举值数组传递给此函数,而是将值作为多个参数传递。有关详细信息,请参阅the Mongoose documentation