升级到symfony 3.4后访问js和CSS

时间:2019-04-25 10:56:27

标签: symfony symfony-3.4 assetic

我将symfony项目从2.8升级到3.4。除了可以访问js和CSS,其他都可以。

当我在2.8中使用资产捆绑包时,我在升级后将其保留。当我尝试更新项目中的js / css时,我运行命令 php bin / console cache:clear php bin / console资产:安装网页 php bin / console asset:dump 。问题是js / css存储在web / bundles / mybundle / ..中,但是它们在HTML中的web / css和web / js中被调用。对于开发人员或产品环境,此问题相同。

这是我的树枝模板中代码的一个示例:

{% javascripts  '@MyBundle/Resources/public/js/add_detail.js'
'@MyBundle/Resources/public/js/add_publication.js                   %}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}

在最终的HTML中,此行调用js:

<script type="text/javascript" src="/js/db6ab9c_add_detail_1.js"></script>
<script type="text/javascript" src="/js/db6ab9c_add_publication_2.js"></script>

如何在HTML代码中为我的css / js做好参考?

2 个答案:

答案 0 :(得分:0)

测试=>

php bin/console cache:clear

php bin/console assets:install  (without web)

php bin/console assetic:dump

或者您可以使用{{asset('')}}

来逐个调用文件

答案 1 :(得分:0)

我发现了问题:这是由于我将模板放在项目根目录下的/ templates目录中。当我将模板放在app / Resources / views目录中时,可以使用php bin/console assetic:dump 命令在web / js和web / css中正确创建资产。 html中引用的资产已正确加载。