在今天一直被一个问题困扰,就算是使用mongoose的alidate的时候想要限制密码的位数,比如不能少于几位,但是一直出错。
最后发现原来使用validate的时候,是在数据将要存入数据库的时候,因此,这样的方法只能对不需要加密的的数据进行验证。但是如果是密码需要加密的话,加密的动作是提前于validate的,因此这个时候,加密后的生成的字符串中字符是相同的个数的,因此不能通过它来进行位数的验证,同样的也就不能对其进行其他的验证。
因此不能使用validate对加密数据进行验证。