2017-06-21 230 views

回答

2

你必須override the default template(佈局: 'SonataAdminBundle :: standard_layout.html.twig')用自己在coding your logique here

下面是對現有代碼的摘錄:

         {% block sonata_admin_content_actions_wrappers %} 
              {% if _actions|replace({ '<li>': '', '</li>': '' })|trim is not empty %} 
               <ul class="nav navbar-nav navbar-right"> 
               {% if _actions|split('</a>')|length > 2 %} 
                <li class="dropdown sonata-actions"> 
                 <a href="#" class="dropdown-toggle" data-toggle="dropdown">{{ 'link_actions'|trans({}, 'SonataAdminBundle') }} <b class="caret"></b></a> 
                 <ul class="dropdown-menu" role="menu"> 
                  {{ _actions|raw }} 
                 </ul> 
                </li> 
               {% else %} 
                {{ _actions|raw }} 
               {% endif %} 
               </ul> 
              {% endif %} 
             {% endblock sonata_admin_content_actions_wrappers %} 
+0

這將按鈕添加到所有管理類,我在問題中提到的,我只是想將按鈕添加到一個管理類。 我可以重寫一個Admin類的standard_layout嗎? –

+1

得到它的工作,在services.yml增加了一個電話: '調用:[setTemplate,['layout','file.html.twig']]' –

0

它要求添加自定義操作並覆蓋特定模板。您可以按照documentation on symfony.com

閱讀到下面的代碼塊:

{# src/AppBundle/Resources/views/CRUD/list__action_clone.html.twig #} 

<a class="btn btn-sm" href="{{ admin.generateObjectUrl('clone', object)}}">clone</a> 
+0

這將如何讓我在導航欄上的新按鈕?請詳細說明我將不得不重現的步驟。 –

+1

我試過你發佈的解決方案,但它不是我想要的。 ![我想要的](https://ibin.co/3QpKpKJyjSx3.png) –