首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改symfony assetic目录

更改symfony assetic目录
EN

Stack Overflow用户
提问于 2016-06-21 08:32:53
回答 1查看 2K关注 0票数 1

我正在开发一个遗留应用程序,我们正在缓慢地迁移到Symfony。目前Symfony2.6 (由于PHP版本),但很快Symfony3.1。

遗留应用程序已经使用主根中的目录/css//js/来管理css+js。

问题是Assetic在从包中编译css+js文件之后也会将它的文件转储到那里。但是这些文件是生成的,不应该以git结束,而遗留文件应该由git管理。

随着时间的推移,遗留文件将完全消失,一切都将由Assetic处理,但就目前而言,我必须与两个工作并肩作战。

我想重新配置Assetic,在生成css+js文件时使用不同的目录。它还应该相应地调整网页上使用的url。最好是添加一个额外的前缀目录。

到目前为止,我发现了两种可能有效的方法:

1:使用assetic的write_to配置。但是,这似乎只影响assetic:dump命令,不应用于更改输出dir (根据注释)。这不会更改浏览器用于检索文件的url。

2:对模板中的每个%javascripts%%stylesheets%标记使用%javascripts%参数。虽然这似乎控制了文件的去向,但我发现在每个标记上都需要这样做是不合逻辑的。我应该可以配置这个系统范围的。

如何调整Symfony和/或Assetic配置以更改用于生成css+js文件的目录和web-dir?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-06-22 19:05:17

可以使用write to进行输出dir,并在框架配置下在资产中定义基本路径。

代码语言:javascript
复制
assetic:
 write_to: "%kernel.root_dir%/../web/foo"

framework:
   assets:
     base_path: "foo"

自从2.7 这里有更多的信息以来,有一个新的资产组件

你可以打电话给

代码语言:javascript
复制
{% javascripts '@AcmeBundle/Resources/public/js/bar.js' output="js/bar.js" %}
    <script src="{{ asset_url }}" defer></script>
{% endjavascripts %}

ps:因为symfony 2.8 assetic不包括在Symfony标准版中。您可以检查像大口吞下这样的选项,以便更容易地处理资产管理。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37939313

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档