2016-12-14 3 views
0

Я использую Symfony3 (вместе с SonataAdminBundle), и мне нужно создать некоторые файлы проверки. Поскольку у меня есть несколько объектов, и я хотел бы разделить файлы y validation validation на один объект, я хотел бы использовать загрузчик с загрузкой зависимостей для загрузки этих файлов. Теперь вопросы, которые у меня есть следующие:Загрузка пользовательской проверки yml в Symfony3

  1. Если создать пользовательский загрузчик для моих файлов проверки, нужно ли мне вручную загрузить мой services.yml и routing.yml, а?

  2. Есть ли очевидная проблема с моим кодом, который может привести к следующей ошибке?

InvalidArgumentException в YamlFileLoader.php линии 404: Там нет расширения может загрузить конфигурацию для "UserAdminBundle \ Entity \ User" (в ***** ЦСИ/UserAdminBundle/внедрение зависимости/../Resources/config/validation/validation.yml). Искал имен "UserAdminBundle \ Entity \ User", не найдено ни одного

Мой файл:

UserAdminBundle\Entity\User: 
    constraints: 
     - Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity: 
      fields: [email] 
      message: 'This user already exists' 
UserAdminBundle\Entity\TaxToReseller: 
    constraints: 
     - Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity: 
      fields: [resellerId, taxId] 
      message: 'Reseller already has this tax' 
UserAdminBundle\Entity\Tax: 
    constraints: 
     - Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity: 
      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'); 

} 

я мог бы использовать некоторые идеи относительно того, почему это не может найти вещи!

Заранее благодарен!

ответ

0

Файлы для подтверждения в Resources/config/validation загружаются по умолчанию. Нет необходимости редактировать метод загрузки.

+0

спасибо, хотя я все равно хотел бы знать, как правильно это сделать –

+0

@AndreiDascalu достаточно для проверки. Если вы, однако, собираетесь загружать другую конфигурацию, а не только проверку, вы должны взглянуть на эти части документации: [Как создать дружественную конфигурацию для пакета] (https://symfony.com/doc/current/bundles /configuration.html) [Определение и обработка значений конфигурации] (https://symfony.com/doc/current/components/config/definition.html) –

 Смежные вопросы

  • Нет связанных вопросов^_^