即时通讯使用symfony ad我读到存储图像js和图像的最佳做法是/ web
<link rel="stylesheet" href="{{ asset('css/bootstrap.min.css') }}" />
如果我想使用assetic,我找到了像
这样的例子 {% javascripts '@AppBundle/Resources/public/js/*' output='js/compiled/main.js' %}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}
其中@AppBundle是Bundle的逻辑名称
逻辑文件名¶
如果要从捆绑中引用文件,请使用以下表示法: @ BUNDLE_NAME /路径/到/文件; Symfony会将@BUNDLE_NAME解析为 捆绑的真实路径。例如,逻辑路径 @ AppBundle / Controller / DefaultController.php将被转换为 src / AppBundle / Controller / DefaultController.php,因为Symfony知道 AppBundle的位置。
我在哪里存储资产?
答案 0 :(得分:3)
如果您不使用资产,则应将可公开访问的图像和j放在/ web目录中。
如果您使用资产,则应将可公开访问的图像和j分别放在@ AppBundle / Resources / public / css和@ AppBundle / Resources / public / js中。然后你将不得不使用资产,资产将自动负责让公众可以访问。您不必担心这一点,通常会将您的文件过滤并复制到您的/ web目录中。
示例:
{% block javascripts %}
{% javascripts '@AppBundle/Resources/public/js/*' %}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}
{% endblock %}
在此示例中,AppBundle的Resources / public / js /目录中的所有文件都将从其他位置加载和提供。实际呈现的标记可能看起来像:
<script src="/app_dev.php/js/abcd123.js"></script>
欲了解更多信息,请阅读: http://symfony.com/doc/2.8/cookbook/assetic/asset_management.html#installing-and-enabling-assetic
答案 1 :(得分:1)
你应该将你的css / js文件放在app / Resources / assets / css和app / Resources / assets / js下(资产文件夹可以是&#34; public&#34;文件夹)
稍后你应该使用assetic将最终的app.css和app.js放在web文件夹下(这是symfony项目中的公共文件夹)
答案 2 :(得分:1)
自Symfony4.0起,最佳实践现在位于/assets
目录中的新root
目录中。
这使您的前端开发人员和设计人员更容易工作而无需进入后端混乱。