在遵循 Symfony2 的验证文档 (http://symfony.com/doc/current/book/validation.html) 时,作者经常提到
src/Acme/BlogBundle/Resources/config/validation.yml
我也有这个文件,在正确的位置(当然是我的包名称和供应商),但它被完全忽略了。
我需要从某个地方加载这个吗?
在遵循 Symfony2 的验证文档 (http://symfony.com/doc/current/book/validation.html) 时,作者经常提到
src/Acme/BlogBundle/Resources/config/validation.yml
我也有这个文件,在正确的位置(当然是我的包名称和供应商),但它被完全忽略了。
我需要从某个地方加载这个吗?
您不必以编程方式加载 validation.yml。您只需修改 config.yml 以启用验证和禁用注释:
framework:
validation: { enabled: true, enable_annotations: false }
您需要在扩展文件 src/Acme/BlogBundle/DependencyInjection/AcmeBlogExtension.php 中加载它。
public function load(array $configs, ContainerBuilder $container)
{
//...
$yamlMappingFiles = $container->getParameter('validator.mapping.loader.yaml_files_loader.mapping_files');
$yamlMappingFiles[] = __DIR__.'/../Resources/config/validation.yml';
$container->setParameter('validator.mapping.loader.yaml_files_loader.mapping_files', $yamlMappingFiles);
}