我试图在Twig模板中渲染图像,如下所示:
<img src="{{ asset('bundles/mybundle/images/no-image.png') }}" alt="no image available" />
它被渲染成这样(带有前导斜杠):
<img src="/bundles/mybundle/images/no-image.png" alt="no image available" />
使服务器在http://myserver.com/bundles/mybundle/images/no-image.png
中查找图像问题是当我在开发模式下查看页面时,它不会生成正确的资产URL。应该是什么:
<img src="bundles/mybundle/images/no-image.png" alt="no image available" />
这将导致服务器查找正确的位置:
http://myserver.com/app_dev.php/bundles/mybundle/images/no-image.png
这个问题有什么办法吗?我希望开发模式下的图像通过app_dev.php运行
答案 0 :(得分:1)
Assetic使用PHP来组合,缩小和修改资产。在开发过程中,这些资产可以继续更改,您不希望每次更改时都执行dump命令。这就是为什么Assetic有一个use_controller
设置,所以资产在请求时组合,缩小和修改文件,然后将响应作为正确的CSS或JS文件返回。
对于普通资产,如图像,JS文件,CSS文件等,没有任何动态可以运行。浏览器应该只是从存储它们的服务器请求图像。所以这不应该通过框架。