我在Bundle/Resources/public/images/abc.png
的捆绑包中有一个图像。
我想从模板文件中引用它。我的第一个想法是<img src="{{ asset('images/abc.png') }}" />
,它显然不起作用。
我不想在渲染的HTML中有像Bundle/Resources/public
这样的文件夹,那么有没有一种方法可以很好地引用资源文件呢?我在文档中找不到任何关于这方面的信息。
assets:install
命令将所有捆绑资源放置(或符号链接)在web/bundles
目录下。然后将AcmeDemoBundle/Resources/public/images/img.png
放在web/bundles/acmedemo/images/img.png
下,您可以在模板中使用asset('bundles/acmedemo/images/img.png')
。这是"官方"方式,大多数捆绑包都以这种方式使用资产。
如果需要,您可以编写自己的资产安装命令,请参阅vendor/symfony/src/Symfony/Bundle/FrameworkBundle/Command/AssetsInstallCommand.php
或将资产放置在web
目录下的任何其他解决方案。
只需将图像放在asset
方法中指定的文件夹中。
| app/
| src/
| web/
`-| images/
`-| abc.png
| javascript/
| css/