guysartorelli/silverstripe-composable-validators

添加可组合表单验证器,具有可重用的验证逻辑。


README

感谢 Signify 使此模块成为可能。

此模块提供了一系列可重用的可组合验证器(包括AJAX验证),可用于CMS和前端表单。

请至少查看扩展文档 - 其中一些应该在几乎所有使用此模块的项目中应用。

如果您的项目有任何自动化的客户端测试,或者您正在实现与该模块兼容的验证器,请确保您阅读了客户端测试文档

安装

通过 composer 安装

composer require guysartorelli/silverstripe-composable-validators

注意事项

使用 AjaxCompositeValidator 提交表单

AjaxCompositeValidator 为您的表单添加了一个提交处理程序。这并不总是与其他提交处理程序很好地交互,可能会导致前端验证被跳过或表单以您预期的方式提交失败,具体取决于哪个提交处理程序首先接收到事件。为了获得最佳结果,请不要向表单添加其他提交处理程序。

如果您在2.3.0或更高版本的 undefinedoffset/silverstripe-nocaptcha 表单上使用 AjaxCompositeValidator,您应该禁用该表单中的 NocaptchaField 的表单提交处理(请参阅nocaptcha文档中的说明)。

可用验证器

抽象验证器

  • BaseValidator
    包括用于获取实际 FormField 及其标签的有用方法。
  • FieldHasValueValidator
    BaseValidator 的子类。对于需要逻辑检查字段是否有任何值的验证器很有用。

特性