繁体   English   中英

Symfony2从数据库加载设置

[英]Symfony2 load settings from database

我有一个db表(doctrine实体),我用它来存储我的应用程序的一些可编辑设置,如页面标题,维护模式(开/关),以及其他一些东西..

我可以使用实体管理器和存储库正常加载设置,但我认为这不是最好的解决方案......

我的问题是: - 我可以在某个内核事件中仅加载一次设置,然后以与访问yml配置文件中保存的任何其他设置相同的方式访问它们。

  • 我如何缓存数据库设置,所以我只会进行一次数据库查询,然后在将来的页面请求中,它会使用缓存的值,而不是对每个页面请求进行数据库查询? (当然,每当我在设置中更改某些内容时,我都需要清除该缓存,因此新设置可能会生效)

LiipDoctrineCacheBundle提供了一个围绕Doctrine的通用Cache( 文档 )的服务包装器,允许您使用多个缓存驱动程序,如filesystem,apc,memcache,...

我建议在bundle-extensioncompiler-pass中从数据库加载通用容器参数/设置(如维护模式......)。

特定于路由的设置(如页面标题,...)可以加载到内核事件侦听器中 您可以在此处找到内核事件列表。

使用doctrine postUpdate / postPersist / postRemove 侦听器更新/使其缓存无效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM