Quiero hacer un archivo de configuración local, config_local.yml
, que permita que cada entorno de desarrollo se configure correctamente sin atornillar los entornos de desarrollo de otras personas. Quiero que sea un archivo separado para poder "gitignore" y saber que no falta nada esencial del proyecto, mientras que al mismo tiempo no tengo el problema de que git me diga constantemente que config_dev.yml tiene nuevos cambios (y corre el riesgo de alguien que comete esos cambios).¿Puedo incluir un archivo de configuración opcional en Symfony2?
En este momento, config_dev.yml He haciendo
imports:
- { resource: config_local.yml }
que es grande, a menos que no existe el archivo (es decir, para un nuevo clon del repositorio).
Mi pregunta es: ¿Hay alguna manera de hacer que esto sea opcional? Es decir, si el archivo existe, entonces impórtelo, de lo contrario ignórelo.
Editar: que estaba esperando una sintaxis como:
imports:
- { resource: config.yml }
? { resource: config_local.yml }
Tu respuesta me hace pensar que tal vez podría crear su propio 'YamlFileLoader' que fallaría correctamente si no se puede encontrar un archivo yml. –
Muy buena respuesta, gracias. Ojalá pudiera dar +2 –
@arms Sí, esto también es posible, pero solo tendría que crear un 'FileLocator' personalizado en lugar de' YamlFileLoader'. Esa excepción se lanza en 'Symfony \ Component \ Config \ FileLocator :: locate', por lo que tendremos que extender la clase base para que la carga falle correctamente. – gilden