如何覆盖SonataUserBundle模板

时间:2014-04-09 09:04:01

标签: symfony sonata-admin sonata-user-bundle

我已经安装了SonataAdminBundle和SonataUserBundle,我试图覆盖一些树枝模板。除了user_block.html.twig

之外,我已成功完成所有工作

这是我的proyect ../app/Resources/目录结构:

Resources/
├── ApplicationSonataUserBundle
│   └── views
│       ├── Admin
│       │   └── Core
│       │       └── user_block.html.twig   <--- it doesn't work
│       ├── layout.html.twig
│       ├── Profile
│       │   ├── action.html.twig
│       │   ├── edit_authentication.html.twig
│       │   ├── edit_profile.html.twig
│       │   └── show.html.twig
│       └── Security
│           └── login.html.twig
├── SonataAdminBundle
│   └── views
│       └── standard_layout.html.twig
└── TwigBundle
    └── views
        └── Exception
            └── error.html.twig

此外,我已尝试将其放在SonataAdminBundle或SonataUserBundle目录下,但没有,它对我没用。

如何覆盖user_block模板?

由于

2 个答案:

答案 0 :(得分:2)

或者,您可以使用配置,如下所示:

sonata_admin:
    templates:
        layout:                 
        user_block: '::Admin/user_block.html.twig'

然后将模板放在此处:app/Resources/views/Admin/user_block.html.twig

答案 1 :(得分:1)

<强>答案

之前显示的目录文件结构正常。我已经解决了问题,只需在standard_layout.html.twig上添加必要的js和css

{% block stylesheets %}
            ...

            <!-- custom stylesheets -->
            <link rel="stylesheet" href="{{ asset('bundles/mybundle/css/mycssfile.css') }}" media="all">

{% endblock %}

{% block javascripts %}
            ...
            <!-- custom js -->
            <script src="{{ asset('bundles/mybundle/js/myscriptfile.css') }}"></script>

{% endblock %}