【问题标题】:Skip Model Validation in Sails.js?在 Sails.js 中跳过模型验证?
【发布时间】:2015-03-19 02:40:06
【问题描述】:

在 Sails.js 中保存对象时是否可以跳过模型验证?我正在编写一个调度应用程序。我对我的 Event 模型进行了验证,该模型要求其 DateTime 属性在未来。对于单元测试,我想包括一些具有过去日期的固定装置,模拟过去的事件。我使用 mocha 进行测试,barrels.js 用于固定装置。如果我尝试在过去添加带有 DateTime 的夹具,我会在 beforeEach 挂钩中收到验证错误,并且我的测试会失败。如果没有在保存时跳过验证的选项,我找不到任何解决方法,而且我在文档中找不到任何相关信息。

谢谢!

【问题讨论】:

    标签: javascript validation sails.js waterline


    【解决方案1】:

    目前此功能在 0.11.x 版本中不可用。您可以通过使用 Model.query() 或 Model.native(取决于您的适配器)来实现它,因为它们将跳过所有验证和挂钩。

    http://sailsjs.org/#!/documentation/reference/waterline/models/native.html http://sailsjs.org/#!/documentation/reference/waterline/models/query.html


    他们是其他解决方法,但由于您只是添加数据进行测试,那么这种方法应该可以工作。

    【讨论】:

    • 太棒了,谢谢!我是否认为sails-disk 适配器没有等效项?
    • 是的,我不这么认为。另一个解决方案是,如果您使用“之后”验证,它可以是一个函数,该函数根据数据传递的设置、环境或值返回一个值。因此,如果您的测试,您可以使该日期等于去年。
    • @Meeker,我在sailsjs 中遇到问题,你能看看吗?这是问题validations-for-associative-models-sailsjs 谢谢!
    猜你喜欢
    • 1970-01-01
    • 2015-01-13
    • 1970-01-01
    • 1970-01-01
    • 2013-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多