我有一个Symfony2包,我想使用数据库表来存储键值配置参数。我希望能够加载查询并将其缓存很长时间,并能够将配置参数注入symfony2服务容器。
现在我正在注入一个从doctrine加载配置的服务,并调用get($ key)方法来检索我想要的键的值。
我基本上希望这些配置选项可以从symfony2服务容器参数包中获得。
是否可能有一个我可以绑定的事件或某种编译器传递,我可以使用我的捆绑来实现这个目的?
答案 0 :(得分:2)
我会在你的服务监听器中做类似的事情
public function onLateKernelRequest(GetResponseEvent $event)
{
$request = $event->getRequest();
$mydata= $this->manager->getRepository('YourBundle:YourTable')->getAll();
$parameters['mydata'] = $mydata;
$request->attributes->add($parameters);
}
在您的控制器中,您可以获取参数:
$this->container->get('request')->attributes->get('mydata');