Symfony2禁用缓存?

时间:2011-08-25 14:41:51

标签: php model-view-controller caching frameworks symfony

有没有办法在Symfony2中禁用缓存功能?我试图找到config *和parameters.ini文件中的设置,我搜索了很多。好的,我找到了一些解决方案,但没有最新版本(Symfony2)。

为什么?因为我想在不清除app / cache *的情况下测试新的模板和功能。

5 个答案:

答案 0 :(得分:71)

我假设你正在使用Twig引擎,(Symfony2的默认模板引擎)。要禁用twig中的缓存,以便您不必像以下那样继续清除缓存:

rm -rf app/cache/*

导航到您的应用配置文件(defualt将位于根目录中的 ../ app / config / config.yml 中)。滚动到树枝配置设置(在 twig:下)并将缓存值(应该指向缓存目录)更改为 false ,如下所示:

twig:
    cache:  false

如果您没有看到任何缓存配置条目,只需添加上面的行。

签出Twig捆绑包的配置参考可能也会有所帮助:http://symfony.com/doc/2.0/reference/configuration/twig.html

编辑config_dev.yml文件后,转到终端并运行:

app/console cache:clear

答案 1 :(得分:8)

好的,关于您的澄清,解决方案只是通过前端控制器web / app_dev.php使用开发环境。然后sf2跟踪您的调整,您不必清除缓存。

答案 2 :(得分:5)

答案 3 :(得分:5)

除了接受的答案,我建议以某种方式编辑config_dev.yml,以便它仍然调试你的twig模板。为此,请将此代码添加到config_dev.yml文件中:

twig:
    cache: false
    debug: true

services:
    twig.extension.debug:
        class: Twig_Extension_Debug
        tags:
                - { name: 'twig.extension' }

编辑config_dev.yml文件后,转到终端并运行:

app/console cache:clear

通过这样做,您将重新加载config_dev.yml设置 - 使用新配置运行项目。

希望这有帮助。

答案 4 :(得分:4)

编辑'config_dev.yml'和'config.yml',然后输入

twig:
    cache:  false