我有一个服务需要访问当前的应用程序基址(在Twig视图中返回app.request.getBaseURL()
)。目前,我的配置是这样的:从服务获取Symfony基本URL?
services:
WidgetModel:
class: AppBundle\Model\WidgetModel
scope: prototype
arguments: ['%widgets%']
因此,作为第二个参数,我想注入基础URL。可能吗?如果不是,那么适当的解决方案是什么?
你试过吗?直接作为服务访问请求很少按预期工作。它绝对不会在S3.x中工作。它可能使用request_stack工作。 – Cerad
是的,我使用OP的'WidgetModel'类创建了一个简单的Symfony 2.7项目,并且只能注入基本URL。你是否有链接显示3.x的迁移路径? – StuBez
“在Symfony 3.0中,我们将通过从容器中删除请求服务来彻底解决问题。” http://symfony.com/blog/new-in-symfony-2-4-the-request-stack。你可以在这里跟上Symfony中发生的事情:http://symfony.com/blog/ – Cerad