Symfony2 - Twig更新未呈现

时间:2015-04-22 10:28:06

标签: php symfony caching twig symfony-2.6

我是Symfony2的初学者。我创建了自己的第一个模板,然后可以通过网址 http://localhost/mylibrary-web/web/app_dev.php/hello/Test 访问该模板。

这是我src/MyLibrary/LibraryBundle/Resources/views/Default/index.html.twig文件的内容:

Hello {{ name }}!

我没有工具栏(因为我没有</body>元素,但如果我使用以下内容更新index.html.twig文件:

<html>
  <body>
    Hi {{ name }}!
  </body>
</html> 
没有什么变化。不考虑这些修改。当我调用网址 http://localhost/mylibrary-web/web/app_dev.php/hello/Test 时,仍会显示旧内容。

我尝试使用命令行php app\console cache:clear清除缓存。我还尝试通过删除app\cache目录来硬删除缓存。最后,我尝试将以下行添加到config_dev.yml文件中:

twig:
    cache: false

不幸的是,没有任何变化,我仍然会显示旧内容。

我是否遗漏了更新树枝文件的内容?

提前感谢您的帮助!

编辑:

这里是src/MyLibrary\LibraryBundle\Controller\DefaultController.php文件的代码:

<?php

namespace MyLibrary\LibraryBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;

class DefaultController extends Controller
{
    public function indexAction($name)
    {
        return $this->render('MyLibraryLibraryBundle:Default:index.html.twig', array('name' => $name));
    }
}

以及命令行php app\console route:debug的结果:

[router] Current routes
 Name                        Method Scheme Host Path
 _wdt                        ANY    ANY    ANY  /_wdt/{token}
 _profiler_home              ANY    ANY    ANY  /_profiler/
 _profiler_search            ANY    ANY    ANY  /_profiler/search
 _profiler_search_bar        ANY    ANY    ANY  /_profiler/search_bar
 _profiler_purge             ANY    ANY    ANY  /_profiler/purge
 _profiler_info              ANY    ANY    ANY  /_profiler/info/{about}
 _profiler_phpinfo           ANY    ANY    ANY  /_profiler/phpinfo
 _profiler_search_results    ANY    ANY    ANY  /_profiler/{token}/search/results
 _profiler                   ANY    ANY    ANY  /_profiler/{token}
 _profiler_router            ANY    ANY    ANY  /_profiler/{token}/router
 _profiler_exception         ANY    ANY    ANY  /_profiler/{token}/exception
 _profiler_exception_css     ANY    ANY    ANY  /_profiler/{token}/exception.css
 _configurator_home          ANY    ANY    ANY  /_configurator/
 _configurator_step          ANY    ANY    ANY  /_configurator/step/{index}
 _configurator_final         ANY    ANY    ANY  /_configurator/final
 _twig_error_test            ANY    ANY    ANY  /_error/{code}.{_format}
 my_library_library_homepage ANY    ANY    ANY  /hello/{name}
 homepage                    ANY    ANY    ANY  /app/example

编辑2:

此处 my_library_library_homepage 路线的定义:

my_library_library_homepage:
    path:     /hello/{name}
    defaults: { _controller: MyLibraryLibraryBundle:Default:index }

这是我grep Hello {{ name }}!时的结果:

  • C:\瓦帕\ WWW \在MyLibrary幅\厂商\ SENSIO \分布束\ Sensio公司\捆绑\ DistributionBundle \资源\骨架\ ACME-演示束\ Acme公司\ DemoBundle \资源\视图\演示\招呼。 html.twig
  • C:\瓦帕\ WWW \在MyLibrary幅\厂商\ SENSIO \分布束\ Sensio公司\捆绑\ DistributionBundle \资源\骨架\ ACME-演示束\ Acme公司\ DemoBundle \资源\视图\担保\招呼。 html.twig
  • C:\ wamp \ www \ mylibrary-web \ vendor \ sensio \ generator-bundle \ Sensio \ Bundle \ GeneratorBundle \ Tests \ Generator \ BundleGeneratorTest.php
  • C:\ wamp \ www \ mylibrary-web \ vendor \ twig \ extensions \ doc \ i18n.rst
  • C:\ wamp \ www \ mylibrary-web \ vendor \ twig \ twig \ doc \ api.rst
  • C:\ wamp \ www \ mylibrary-web \ vendor \ twig \ twig \ doc \ intro.rst

2 个答案:

答案 0 :(得分:2)

这可能很奇怪,但......重新启动wamp的服务后,一切似乎都正常......

答案 1 :(得分:1)

首先,检查您是否有权在文件夹缓存中写入:

app/cache/dev/

删除那里的所有文件并运行:

php app/console cache:clear --env=dev
php app/console cache:warmup --env=dev