0

如题。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']);
4

1 回答 1

1

问题是这vote.type不是路径,vote是。所以如果你想修改vote属性,那么你想使用ActionSchema.path('vote')

所以要添加一个枚举:

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

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

于 2013-07-04T10:33:40.340 回答