在Symfony3中加载自定义验证YML



我正在使用symfony3(与sonataadminbundle一起使用),我需要创建一些验证文件。由于我有几个实体,并且我想将验证YML文件分为一个每个实体,因此我想使用依赖项注入加载程序来加载这些文件。现在,我有这些问题:

  1. 如果我为验证文件创建自定义加载程序,我是否需要手动加载我的services.yml和routing.yml?

  2. 我的代码是否有明显的问题会导致以下错误?

yamlfileleloader.php行404中的无效性exception。 扩展可以加载配置 " UserAdminBundle Entity user"(在 ***** src/userAdminBundle/depentencyInjection/../cormest/config/config/validation/validation.yml)。 寻找名称空间" UserAdminBundle Entity user",发现无

我的文件:

UserAdminBundleEntityUser:
    constraints:
        - SymfonyBridgeDoctrineValidatorConstraintsUniqueEntity:
            fields: [email]
            message: 'This user already exists'
UserAdminBundleEntityTaxToReseller:
    constraints:
        - SymfonyBridgeDoctrineValidatorConstraintsUniqueEntity:
            fields: [resellerId, taxId]
            message: 'Reseller already has this tax'
UserAdminBundleEntityTax:
    constraints:
        - SymfonyBridgeDoctrineValidatorConstraintsUniqueEntity:
            fields: [ name, value ]
            message: 'This tax already exists'

我的负载方法:

public function load(array $configs, ContainerBuilder $container)
{
    $loader = new YamlFileLoader(
        $container,
        new FileLocator(__DIR__.'/../Resources/config')
    );
    //$loader->load('validation/validation.yml');
    $loader->load('validation/agent_validation.yml');
    $loader->load('validation/call_centre_validation.yml');
    $loader->load('validation/reseller_header_validation.yml');
    $loader->load('validation/reseller_validation.yml');
    $loader->load('validation/tax_validation.yml');
}

我可以使用一些想法,说明为什么找不到东西!

预先感谢!

Resources/config/validation中的验证文件默认情况下是加载的。无需编辑加载方法。

最新更新