在Symfony2中充当服务

时间:2015-06-08 09:53:47

标签: php symfony

我在数据库中存储一个字符串,我想从我的应用程序中的各个位置访问它。我发现最好的解决方案是创建一个从数据库中获取该字符串并将其注册为服务的函数。

功能:

public function shopUrlAction()
{ 
  return new Response($this->getDoctrine()->getRepository('AppBundle:Settings')->find(1)->getName());
}

service.yml

services:
  app.default_controller:
    class: AppBundle\Controller\DefaultController

其他控制器的输出:

$return['base_url'] = $this->forward('app.default_controller:shopUrlAction');

不幸的是我一直在

  

CRITICAL - 未捕获的PHP异常   Symfony的\分量\ DependencyInjection \异常\ ServiceNotFoundException的:   “您已请求不存在的服务”app.default_controller“。”   在/app/bootstrap.php.cache行   2099年背景:   { “异常”: “对象(Symfony的\元器件\ DependencyInjection \异常\ ServiceNotFoundException的)”}

我已清除缓存。

1 个答案:

答案 0 :(得分:1)

正如我从您的问题中看到的那样,您有service.yml而不是services.yml(复数形式)。

您应该在service.yml部分的config.ymlimports中添加AppBundle/Resources/config/services.yml或使用标准路径(insert into account (id, isLocked) values(1, false)