我有一个自定义服务,我想将check_path
(来自app/config/security.yml
)设置的值注入其中。在我的服务定义中,我尝试使用
arguments:
check_path: %security.firewalls.main.form_login.check_path%
但是这会导致这个错误:
服务"myService"依赖于一个不存在的参数"security.firewalls.main.form_login.check_path"。
有人知道怎么让这个工作吗?
编辑
我可以先在parameters.ini
中定义一个变量,然后在security.yml
中使用它并将其注入到我的服务中,但我想避免这样做。需要在parameters.ini
中"重新声明"变量似乎会变得混乱,特别是如果我后来需要从security.yml注入更多的设置。我不想每次都在parameters.ini中定义一些东西
将此添加到您的parameters.yml
(或parameters.ini
-然后使用=
代替:
)文件:
login.check_path: /your/path/here
然后去你的security.yml
,这样做:
form_login:
check_path: %login.check_path%
然后用这个作为你的参数:
arguments: [ %login.check_path% ]
我不是100%确定,也许其他人可以确认,但试试@security.firewall .main.form_login。Check_path(用@代替引号引用配置和服务)?