私は Symfony3 (SonataAdminBundle と一緒に) を使用しており、いくつかの検証ファイルを作成する必要があります。複数のエンティティがあり、検証 yml ファイルをエンティティごとに 1 つに分割したいので、依存性注入ローダーを使用してそれらのファイルをロードしたいと思います。今、私が持っている質問は次のとおりです。
検証ファイル用のカスタム ローダーを作成する場合、services.yml と routing.yml も手動で読み込む必要がありますか?
私のコードに、次のエラーを引き起こす明らかな問題はありますか?
YamlFileLoader.php 行 404 の InvalidArgumentException: 「UserAdminBundle\Entity\User」の構成をロードできる拡張機能がありません (*****src/UserAdminBundle/DependencyInjection/../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');
}
なぜ物が見つからないのかについて、いくつかのアイデアを使用できます。
前もって感謝します!