猫鼬模式。如何为对象创建默认值?

时间:2015-08-21 18:38:01

标签: angularjs node.js mongodb mongoose

认识我的UserModel:

var UserModel = mongoose.model('UserModel', 
{
    username: { type: String, default: 'Nameless'},
    password: String,
    registry: String,
});

我想对我的用户名密钥执行类似的操作:

username: { 
  description: {type: String, default: 'Name'},
  value: {type: String, default: 'Nameless'}
};

我的目标是在ng-repeat中使用这个键,所以我可以这样做:

<p> {{ user.username.desc }}: {{ user.username.value }} </p>

带输出:名称:无名

我的问题是:我应该做错事。我收到语法错误,我的服务器甚至没有启动。 :)

1 个答案:

答案 0 :(得分:0)

您可以使用函数设置默认值,因此创建一个,也可以使用preSave验证模型,如:

UserModel.pre('save', function(next) {
  var self = this;

  // validate username field here
  });
}

此处有更多信息http://mongoosejs.com/docs/middleware.html