如何使用Twig / Assetic添加资产以及Twig的其他奇怪问题?

时间:2014-10-30 02:17:11

标签: php symfony twig

(代码在底部)

您好。我正在尝试使用Twig / Assetic(在这里使用app_dev.php)并且我遇到了一些问题/奇怪的行为。

  1. 我跟随此guide添加了js文件并且它不适合我。我使用firebug查看了页面源代码,但没有添加脚本标记。我100%确定目录中有.js文件。

  2. 我尝试过与css类似的技巧,而且它也没有显示出来。

  3. 我正在使用扩展功能。我的基本文件(base.html.twig)是子模板上的一个目录。但奇怪的是,基本模板中的内容并未显示在呈现的页面中。

  4. 除了没有。 3,我打电话给我的块" body"作为子模板的容器。我尝试将其更改为"内容"就像在这个page中看到的一样,它只显示空白。没有拼写错误,所以它不可能。我把它改回了" body"它工作正常。奇怪的是,它似乎被硬编码为" body"

  5. 还尝试使用资产功能附加css文件,但它也不起作用。我使用了" php app / console asset:install web --symlink"创建符号链接。我检查了css文件是否可以通过符号链接看到,文件就在那里。

  6. 我的基本模板中存在的
  7. 未显示在呈现的页面上。

  8. 有关如何解决问题的任何想法?

    非常感谢

    base.html.twig

    <!DOCTYPE html>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            <title>{% block title %}Test Application{% endblock %}</title>
            {% block stylesheets %}
                {% stylesheets '@MyAppMyBundle/Resources/public/css/*' filter='cssrewrite' %}
                    <link rel="stylesheet" href="{{ asset_url }}" />
                {% endstylesheets %}
            {% endblock %}
            {% block javascripts %}
                {% stylesheets '@MyAppMyBundle/Resources/public/js/*' %}
                     <script type="text/javascript" src="{{ asset_url }}"></script>
                {% stylesheets %}
            {% endblock %}
        </head>
        <body>
            <div id="content">
                {% block body %}{% endblock %}
            </div>
            <div id="footer">
                <hr>test<hr>
            </div>
        </body>
    </html>
    

    details.html.twig

    {% extends "base.html.twig" %}
    
    {% block body %}
        {{ form(form) }}
    {% endblock %}
    

    使用资产功能附加css

    <link rel="stylesheet" href="{{ asset("bundles/myappmybundle/css/my.css") }}" />
    

1 个答案:

答案 0 :(得分:0)

我建议您查看您的页面源信息,以便检查您的源是否真的在Web文件夹中或指向另一个目录,symfony将所有css和javascript文件存储在Web文件夹中以及何时执行php app / console assetic:dump,symfony会将捆绑包中的所有Web资源转储到Web文件夹。

当您检查java脚本或css时,最好从生成的页面源中查看它以检查URL。