【问题标题】:What is the best place of main assets declared in `base.html.twig``base.html.twig`中声明的主要资产的最佳位置是什么
【发布时间】:2012-11-03 08:01:39
【问题描述】:

每个包都有自己的公共目录来存储资产 (css/js/images)。

现在app\Resources\views\base.htl.twg 中使用的资产的最佳位置是什么?

Symfony 如何理解如何将它们传播给公众?

【问题讨论】:

    标签: symfony assets


    【解决方案1】:

    通常,app/Resources/view 目录中可用的模板资产(如 base.html.twig)直接放在 web 根目录的子目录中,如 web/includes/css/main.css,并使用 asset('includes/css/main.css') 调用。

    如果您不喜欢它,您可以轻松创建自己的捆绑包来存储应用资产。

    【讨论】:

    • 我可以将资产存储在app/Resources/public 中吗?如果是,怎么做?
    • 不,你不能,目录 app/Resources/public 没有映射到 web 目录中。你需要把你的资产放在 web 目录中
    • 我告诉你更多关于。您可以使用assetic 从任何地方获取资产,但在项目的初始阶段过度优化,我通常将我的开发资产放在/web 目录中,然后将它们移动到它们的包中或离开它们所在的位置。将静态文件放在 /app/Resource/public 或 /web 意味着完全相同的东西,不同之处在于 /web 目录中的文件可以直接访问,app/Resources/public 中的 intead 文件需要以某种方式映射/链接
    • 请问这个问题:assetic-bundle in vendors/symfonygithub.com/kriswallsmith/assetic 之间有什么区别
    【解决方案2】:

    我建议您创建一个 DesignBundle 来存储所有基本模板和资产。此方法允许您与其他应用程序共享您的配置。

    【讨论】:

    • 所以我应该选择以下方式之一: 1- 将资产放在 web 目录上。 2-创建一个包来存储共享资产。我是真的吗?
    • 是的。但不存在正确的方式:尝试两者并选择更适合您的方式。
    • 我的解决方案允许您将所有布局和所有设计分开。您可以从 YourCompany/DesignBundle/Category/YouDesignName.html.twig 扩展,例如:Acme/DesignBundle/ColumnsLayout/ThreeColumn.html.twig、Acme/DesignBundle/ColumnsLayout/TwoColumn.html.twig、Acme/DesignBundle/Templates/User。 html.twig, ... 等等。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-05
    • 2012-07-13
    • 1970-01-01
    • 1970-01-01
    • 2019-02-06
    • 1970-01-01
    相关资源
    最近更新 更多