symfony2 validation.ymlを分割する
実験的にやってみただけなのであしからず。
/Resources/config/*validation.yml
のような感じでワイルドカードで複数定義を読めるようにする。
Symfony\Bundle\FrameworkBundle\DependencyInjection;
FrameworkExtension.pnp
getValidatorYamlMappingFiles() メソッドの中の
この部分を
if (is_file($file = dirname($reflection->getFilename()).'/Resources/config/validation.yml')) { $files[] = realpath($file); $container->addResource(new FileResource($file)); }
こーする
/* if (is_file($file = dirname($reflection->getFilename()).'/Resources/config/validation.yml')) { $files[] = realpath($file); $container->addResource(new FileResource($file)); } */ $add_files = glob( dirname($reflection->getFilename()).'/Resources/config/*validation.yml' ); foreach( $add_files as $file ){ $files[] = realpath($file); $container->addResource(new FileResource($file)); }
要はvalidation.ymlとリテラルで書かれているものをワイルドカードで検索するだけ。。。
正規の方法ありそうなんだけど、見つからないよう。
追記
http://stackoverflow.com/questions/9403609/in-symfony2-can-the-validation-yml-file-be-split-into-multiple-files-using-impo
各バンドルのDependencyInjectionで注入するのがお作法みたい