首页 文章

Symfony 2资产的文件结构

提问于
浏览
0

我正在Symfony 2中创建我的第一个项目,我对在每种情况下存储我的资产(CSS,JS,图像等)的位置感到困惑 .

我开始了解模板系统如何工作,您应该将Bundles创建为独立的,然后在app / Resources中使用特定于站点的内容覆盖它们 .

但是,当谈到资产时,我是否在app / Resources中为特定于站点的内容创建了一个“公共”文件夹?

为什么捆绑的一些资产保存在Web /捆绑中?

2 回答

  • 0

    你必须将css,images,js等放入它们应该属于的bundle中的一个文件夹中 . 此文件夹名为 public ,并包含在 Resources 文件夹中(显然,在其中,您可以为css,js,...分区创建其他文件夹) .

    完成后,您可以按照以下命令使用(来自 C ommand L ine I nterface a.k.a. CLI ):

    php app/console assets:install web
    

    通过这种方式,您将 make a copy 文件夹中包含 Resources 文件夹中名为 public 的所有文件夹的 make a copy 告诉symfony2(这是默认行为) .
    Symfony将创建(或扩展,如果存在)名为 bundles 的文件夹,其中包含应用程序的所有资产(包括来自供应商的一些资产) .

    请注意

    如果您运行上面的命令,那么您正在复制资源,因此每次更改它们时,都必须再次启动命令 . 更好的方法是使用符号链接更改上面的命令,如下所示

    php app/console assets:install web --symlink
    

    web 文件夹作为目标文件夹的原因是,您的Web服务器(apache或其他人是相同的)应该只访问其中包含的资源,并使symfony2成为恢复所有资源的任务 .

    希望能帮助到你 .

  • 1

    试试Symblog教程... Symblog

    This部分特别关注资产

相关问题