如何更改 Symfony 参数


How to change a Symfony parameter

我正在使用LiipThemeBundle,它支持网站上的不同主题,具体取决于参数(liip_theme.active_theme):

liip_theme:
    themes: ['standardTheme', 'blackTheme']
    active_theme: 'standardTheme'

我想从表单更改活动主题或从数据库中获取它,以允许动态主题更改。问题是正在缓存参数,如果不删除缓存,则无法更改参数值。我还认为仅为参数删除整个缓存不是一个好主意。

因此,使用数据库中的值修改 yml 值在生产环境中不起作用(因为它从缓存中获取它)。这似乎是最好的解决方案,如果我能找到一种方法将其"注入"缓存中。

编译器传递也不是一个好主意,因为有时才会更改参数,只有当网站管理员决定更改它时。

如何更改参数或不允许缓存?

好吧,你应该尝试:

liip_theme: 主题: ["标准主题", "黑色主题"] active_theme:"%liip_theme%"

在 config.ml 的参数部分中定义的 %liip_theme% 以内