索纳塔管理员捆绑模板

时间:2014-03-21 14:12:19

标签: symfony twig sonata-admin symfony-sonata

我最近安装了Symfony& Sonata管理员捆绑,工作正常。 是否可以更改/自定义管理界面(模板)?我在哪里可以下载这些模板?任何教程如何做到这一点?

3 个答案:

答案 0 :(得分:6)

可以更改任何模板。 为此,您需要:

  • 安装EasyExtendBundle
  • 运行命令$ php app / console sonata:easy-extends:generate SonataAdminBundle -d src

  • 在AppKernel.php中注册生成的包(名称为ApplicationSonataAdminBundle)

  • 复制您需要从供应商目录扩展的模板,并将其放在新捆绑包中的相同层次结构中。

  • 更改新模板并添加所需的任何块

PS:你可以用CSS或JS文件做同样的事情

答案 1 :(得分:3)

您可以根据奏鸣曲模板编写新模板,也可以在指示奏鸣曲管理员在请求页面时显示模板。在Admin类中,您必须覆盖' getTemplate'方法,像这样:

public function getTemplate($name)
{
    switch ($name) {
        case 'edit':
            return 'YourBundle:YourFolder:yourEdit.html.twig';
            break;
        case 'list':
            return 'YourBundle:YourFolder:yourList.html.twig';
            break;
        default:
            return parent::getTemplate($name);
            break;
    }
}

该示例会覆盖'编辑'的模板。和'列出'动作。对于其他动作,它将获得奏鸣曲的semplates。

答案 2 :(得分:1)

您可以简单地覆盖捆绑包中的任何模板。查看文档here

默认情况下,所有模板都在config.yml中配置:

sonata_admin:
    templates:
        layout:  SonataAdminBundle::standard_layout.html.twig
        ajax:    SonataAdminBundle::ajax_layout.html.twig
        list:    SonataAdminBundle:CRUD:list.html.twig
        show:    SonataAdminBundle:CRUD:show.html.twig
        edit:    SonataAdminBundle:CRUD:edit.html.twig
        history: SonataAdminBundle:CRUD:history.html.twig
        preview: SonataAdminBundle:CRUD:preview.html.twig
        delete:  SonataAdminBundle:CRUD:delete.html.twig
        batch:   SonataAdminBundle:CRUD:list__batch.html.twig
        acl:     SonataAdminBundle:CRUD:acl.html.twig
        action:  SonataAdminBundle:CRUD:action.html.twig
        select:  SonataAdminBundle:CRUD:list__select.html.twig
        dashboard:           SonataAdminBundle:Core:dashboard.html.twig
        search:              SonataAdminBundle:Core:search.html.twig
        batch_confirmation:  SonataAdminBundle:CRUD:batch_confirmation.html.twig
        inner_list_row:      SonataAdminBundle:CRUD:list_inner_row.html.twig
        base_list_field:     SonataAdminBundle:CRUD:base_list_field.html.twig
        list_block:          SonataAdminBundle:Block:block_admin_list.html.twig
        user_block:          SonataAdminBundle:Core:user_block.html.twig
        pager_links:         SonataAdminBundle:Pager:links.html.twig
        pager_results:       SonataAdminBundle:Pager:results.html.twig
        history_revision_timestamp:  SonataAdminBundle:CRUD:history_revision_timestamp.html.twig
        short_object_description:    SonataAdminBundle:Helper:short-object-description.html.twig
        search_result_block: SonataAdminBundle:Block:block_search_result.html.twig