我在数据库中存储一个字符串,我想从我的应用程序中的各个位置访问它。我发现最好的解决方案是创建一个从数据库中获取该字符串并将其注册为服务的函数。
功能:
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的)”}
我已清除缓存。
答案 0 :(得分:1)
正如我从您的问题中看到的那样,您有service.yml
而不是services.yml
(复数形式)。
您应该在service.yml
部分的config.yml
主imports
中添加AppBundle/Resources/config/services.yml
或使用标准路径(insert into account (id, isLocked) values(1, false)
)