好的,所以我有一个我写过的库,我想在Symfony中使用它。它的配置存储在yml文件中。
目前我在src/AppBundle/Resources/config
中有yml文件。我需要将此配置文件的路径注入服务。目前,我只是简单地编码了services.yml
中的配置文件的相对路径: -
service_name:
class: My\Library\Service
arguments: ["../src/AppBundle/Resources/config/my_library_config.yml"]
我觉得这不是正确的方法吗?
答案 0 :(得分:1)
您可以使用Extension
类为您生成路径,并在容器编译时替换参数。
然而,Symfony已经有configuration processing method。扩展选项在没有配置的情况下是无用的,因此如果您不构建它以便重复使用,请使用%kernel.root_dir%
来添加正确的路径。
如果 要重用它,那么将配置设置为静态就没有意义了。在这种情况下,我建议您进行配置选项,以便人们可以自己配置捆绑/选项。
您是否有想要制作自己的配置的实际原因?您可以简单地定义一个参数并将整个配置存储在一个参数中,这样可以避免创建和解析您自己的配置文件,并使您从参数系统中受益。