Symfony2,将 css、javascript、图像放在哪里
Posted
技术标签:
【中文标题】Symfony2,将 css、javascript、图像放在哪里【英文标题】:Symfony2, where to put css, javascript, images 【发布时间】:2013-08-06 23:21:47 【问题描述】:我是 Symfony2 的初学者,我在放置 css、js、图像等资源时遇到了一些问题...... 我刚刚阅读了这份文件how to use Assetic 但我不知道什么是放置我的资产的最佳方式。那篇文章告诉我,我应该将 js 文件放在我的 Bundle 中,但将 css 文件放在 /web/public/css 中(在 Bundle 之外)。这是复杂和不便的。 有人可以给我看看吗? 谢谢
【问题讨论】:
在这里查看出色的答案:***.com/questions/9500573/…。这对我们来说效果很好。 【参考方案1】:你可以把它们放到*Bundle/Resources/public/中,然后运行
$ php app/console assets:install --symlink
这将在您的 web/bundles/ 中创建一个带有捆绑名称的符号链接,链接到现有捆绑的公共文件夹。如果您想在您的 html(或主要是 css)代码中使用更简单的路径,您可以直接在您的 web 文件夹中创建一个符号链接。
【讨论】:
【参考方案2】:如果您使用已接受的答案
app/console assets:install web --symlink
当您包含文件(css、js、图像)时,您需要像在 TWIG 中那样更改 PATH:
asset('bundles/myBundle/css/main.css')
在 PHP 中:
<?php echo $view['assets']->getUrl('bundles/myBundle/img/logo.png') ?>
【讨论】:
【参考方案3】:我们把它们放在 web/assets/[css|img|js|fonts|less|xml|...]
【讨论】:
【参考方案4】:如果您的 css/js 文件仅在您的包中使用,则将它们放在包资源中是可以的。否则,如果它被许多捆绑包使用,则放置到公用文件夹中
【讨论】:
以上是关于Symfony2,将 css、javascript、图像放在哪里的主要内容,如果未能解决你的问题,请参考以下文章
在 Symfony2 中使用 Twig 作为 JavaScript 的资产过滤器