Mongo月模式验证

时间:2015-05-12 14:25:17

标签: node.js mongoose

我需要验证用户是否选择2(FEB)月份,然后他不应该输入dayOfMonth< = 28

如何验证

我的架构就像下面的

date: {
    months: {
        type: String,
        required: true,
        validate: [validatorMonths, 'allowed session values are * and 0 to 11']
    },
    dayOfMonth: {
        type: String,
        required: true,
        validate: [validatorDayOfMonth, 'allowed day of month values are * and 1 to 31']
    } }

function validatorDayOfMonth(v) {
    return ((v == '*') || (v >= 1 && v <= 31)); };

function validatorMonths(v) {
    return ((v == '*') || (v >= 0 && v <= 11)); };

2 个答案:

答案 0 :(得分:0)

您可以使用Date检查返回的日期是否等于提供的日期:

new Date(2015, 1, 29).getDate() // 1

这是有效的,因为Date构造函数会自动将额外的天/月更正为适当的日期。

from nltk import IBMModel1 as ibm
biverses = [list of AlignedSent objects]
model = ibm(biverses, 20)

with open(path + "eng-taq_model.txt", 'w') as f:
    f.write(model.train(biverses, 20))  // makes empty file

或者您可以使用Moment做同样的事情(虽然这可能有点过分)。

答案 1 :(得分:0)

我认为您需要利用mongooose中间件进行验证。它允许您挂钩可以调用presave的事件并访问整个模式http://mongoosejs.com/docs/api.html#document_Document-validate

你可以做点什么

2015-05-12 19:28:01.955 Game[7342:2394353] -[SKView didPan:]: unrecognized selector sent to instance 0x154520690