Node.js 仅在更新时进行模型验证,而不是在创建时进行模型验证

Node.js 仅在更新时进行模型验证,而不是在创建时进行模型验证,node.js,sails.js,sails-mongo,Node.js,Sails.js,Sails Mongo,在使用sails验证时,我只需要一些字段在更新时得到验证,而不是在创建期间。该场景是,当用户开始创建时,我只是获取用户名和密码,然后我要求为用户提供所有剩余数据,我只需要在更新期间应用一些验证规则,而不需要创建 我知道我可以在更新之前使用生命周期回调进行一些手动验证,但是我不会使用sails验证,我认为这不是正确的方法 如何告诉模型这些规则只需要在更新期间应用?具体是什么规则?您可以做的一件事是对规则进行真/假检查,以查看记录是否具有Id。如果有,则为更新,如果没有,则为创建 favorite_

在使用sails验证时,我只需要一些字段在更新时得到验证,而不是在创建期间。该场景是,当用户开始创建时,我只是获取用户名和密码,然后我要求为用户提供所有剩余数据,我只需要在更新期间应用一些验证规则,而不需要创建

我知道我可以在更新之前使用生命周期回调进行一些手动验证,但是我不会使用sails验证,我认为这不是正确的方法


如何告诉模型这些规则只需要在更新期间应用?

具体是什么规则?您可以做的一件事是对规则进行真/假检查,以查看记录是否具有Id。如果有,则为更新,如果没有,则为创建

favorite_color : {
    required : function(){
       return 'id' in this // ID should be your primary key field. 
    }
}

我想说,如果您可以指定验证发生的时间,那将非常好,但目前您不能

您可以将DB实体拆分为两个单独的实体,并使用两个模型。第一个型号需要用户名和密码,第二个型号需要其他字段。

谢谢Meeker!这可能是一个解决办法,但我现在正在做的是为此使用beforeUpdate回调,并直接使用validator.js,sails也在使用它进行验证!