Symfony Sonata admin - 禁用菜单切换按钮

Symfony Sonata admin - disable menu toggle button

有没有简单的奏鸣曲配置来禁用菜单切换按钮? ('Menu-hamburger' 在下图中用红色下划线。)

我快速浏览了一下,但找不到任何相关信息。

在您的 symfony 项目中创建以下目录,如果它不存在的话:

mkdir -p app/Resources/SonataAdminBundle/views

选项 -p 还将在指定路径中创建父目录。

将以下文件复制到新创建的目录中:

cp vendor/sonata-project/admin-bundle/Resources/views/standard_layout.html.twig \
app/Resources/SonataAdminBundle/views/

命令应该写在一行中。由于它的长度,我使用反斜杠将它分成两行 \.

现在您可以编辑复制的文件app/Resources/SonataAdminBundle/views/standard_layout.html.twig

找到以下几行(我在第 115 到 120 行):

<a href="#" class="navbar-btn sidebar-toggle" data-toggle="offcanvas" role="button">
    <span class="sr-only">Toggle navigation</span>
    <span class="icon-bar"></span>
    <span class="icon-bar"></span>
    <span class="icon-bar"></span>
</a>

删除它们,注释掉它们,做任何你想做的,清除缓存:

php app/console cache:clear

并刷新页面。瞧!

更简洁的方法是像这样覆盖您要更改的块:

app/config/import/sonata_admin.yml:

sonata_admin:
    templates:
        layout: AppBundle::Admin/standard_layout.html.twig

src/AppBundle/Resources/views/Admin/standard_layout.html.twig:

{% extends 'SonataAdminBundle::standard_layout.html.twig' %}

{% block sonata_nav %}
    <nav class="navbar navbar-static-top" role="navigation">
        <div class="navbar-left">
            {% block sonata_breadcrumb %}
                {{ parent() }}
            {% endblock sonata_breadcrumb %}
        </div>

        {% block sonata_top_nav_menu %}
            {{ parent() }}
        {% endblock %}
    </nav>
{% endblock sonata_nav %}