myschoolmanagement / assert-constraint
使用 beberlei/assert 的 Symfony 验证约束
2.02
2022-12-01 14:12 UTC
Requires
- php: >=7.2
- beberlei/assert: ^v3.2
- symfony/validator: ^v4.2|^v5.0
README
这是一个简单的桥梁,用于将 beberlei/assert 断言用作 Symfony Validator 组件的约束。
安装
使用 Composer
composer require myschoolmanagement/assert-constraint
配置
如果您使用自己的 Assertion
类或自己的 Exception
类,则必须通过设置 AssertionConstraint\AssertionValidator::$assertClass
和 AssertionConstraint\AssertionValidator::$assertExceptionClass
来配置这些类。这两个都是静态属性。
生成新的约束
在 bin
目录中有一个用于生成约束类的辅助工具。这也会被复制到 vendor/bin
。
原型
Usage: generate-constraints.php <path-to-class-file> <fqdn class> <output-namespace> <directory-to-output-classes>
示例用法
php vendor/bin/generate-constraints.php vendor/beberlei/assert/lib/Assert/Assertion.php Assert\\Assertion MyBundle\\Constraint src/MyBundle/Constraint
这将检测 Assert\Assertion
类上的所有断言,并在 src/MyBundle/Constraint
目录中输出约束文件,该文件位于 MyBundle\Constraint
命名空间。
生成器将尽力检测断言参数,并将这些参数添加到约束类中,以便可以通过注解进行配置。