我正在研究获取实体的所有验证约束的方法(我想要实现的是使用JQuery Validation Plugin在JSON中返回此数据并在客户端应用相同的约束),但是我在获取约束时遇到一些麻烦,这是我目前的代码:
$metadata = new \Symfony\Component\Validator\Mapping\ClassMetadata("Namespace\JobBundle\Entity\Job");
$annotationloader = new AnnotationLoader(new AnnotationReader());
$annotationloader->loadClassMetadata($metadata);
Run Code Online (Sandbox Code Playgroud)
我在$ metadata中得到的是一个用于constraints属性的空数组,其余的($ properties和$ members只有错误消息......但不是实际的约束(例如:required,integer ...)).
我做错了什么?
我试图获取实体的所有验证约束并将这些约束转换为Jquery验证规则,现在我能够获得注释定义的约束(感谢:Symfony2获得实体的验证约束),但是我在获取xml和yml时遇到了一些麻烦那些.
$xml_file_loader = new XmlFileLoader("path_to_my_project/vendor/friendsofsymfony/user-bundle\FOS\UserBundle\Resources\config\validation.xml");
Run Code Online (Sandbox Code Playgroud)
使用类似的代码意味着我需要事先知道xml/yml文件的位置,我试图以某种方式编写一个可以自动执行此操作的通用代码.
有没有办法立刻获得所有约束?如果不是我怎么知道xml/yml文件的位置,并且在继承的情况下我需要检查父约束...这可行吗?
当我使用Array.fill填充多维数组时,我在推送到其中一个数组时会遇到奇怪的行为:
var arr = Array(2).fill([]);
arr[0].push(5);
console.log(arr);
//=> prints [[5], [5]]
Run Code Online (Sandbox Code Playgroud)