我有自定义服务,我想将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中定义一些东西。
答案 0 :(得分:1)
将此添加到您的parameters.yml
(或parameters.ini
- 然后使用=
而不是:
)文件:
login.check_path: /your/path/here
然后转到security.yml
并执行此操作:
form_login:
check_path: %login.check_path%
然后用它作为你的论点:
arguments: [ %login.check_path% ]
答案 1 :(得分:0)
我不是百分百肯定,也许其他人可以确认,但请尝试@ security.firewalls.main.form_login.check_path(使用@而不是引号来引用配置和服务)?