使用Symfony2的Assetic会导致404错误。

5

我似乎不能使Assetic与我一起工作。

这是我在config.yml文件中的Assetic配置:

assetic:
    debug:          "%kernel.debug%"
    use_controller: false
    bundles:        [ FOSUserBundle, MyUserBundle ]
    filters:
        cssrewrite: ~

我创建了一个扩展FOSUserBundle的bundle。我覆盖了注册模板并尝试使用自己的CSS。
// MyUserBundle/Resources/views/Registration/register_content.html.twig

{% block stylesheets %}
    {% stylesheets 'bundles/myuser/css/*' filter='cssrewrite' %}
        <link rel="stylesheet" href="{{ asset_url }}" />
    {% endstylesheets %}
{% endblock %}

我的bundle的结构如下:

/MyUserBundle
    ...
    /Resources 
        ...
        /public
            /css
                signup.css

我总是得到404错误。

http://myproject.dev/css/494d9ed_part_1_signin_1.css 404 Not Found.

我收到以下异常:

No route found for "GET /css/494d9ed_part_1_signin_1.css"

我已经发布了资产,所以它也存在于:

/MyProject
    /web
        /bundles
            /myuser
                /css
                    signin.css

我做错了什么?
1个回答

5

您可以尝试使用以下语法:

{% stylesheets filter='cssrewrite' '@MyUserBundle/Resources/public/css/*' %}
    <link rel="stylesheet" type="text/css" href="{{ asset_url }}" />
{% endstylesheets %}

然后在命令行上输入:

php app/console cache:clear
php app/console assets:install --symlink
php app/console assetic:dump

DEV环境中,它应该在没有assetic:dump命令的情况下工作。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接