SonataAdminBundle中的多维选项卡

时间:2015-04-28 15:47:46

标签: symfony multidimensional-array tabs sonata-admin

我使用SonataAdminBundle作为symfony项目,我想在EntityAdmin configureFormField函数中创建一个多维选项卡来填充数据库表。

详细信息我有一个带有Id和Name的实体域,我有一个带有Id和Name的实体Profil,我有一个实体ProfilDomain,因为我有三个字段(布尔类型)显示,修改和删除换句话说,这个实体是一个关联表,其中包含前两个实体,其中包含其他字段。

我的问题是如何显示一个多维选项卡,用于在数据库中填充此表,如图What I seek

索纳塔能够使用所有控制器来执行此类选项卡。

如果没有,你有一些文件或一些建议去做。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

如果您正在谈论表单视图,看起来您可以使用指令嵌套。在这里查看来源:https://github.com/sonata-project/SonataAdminBundle/blob/master/Mapper/BaseGroupedMapper.php#L45

如果要在列表视图中创建此类布局,可以为管理员创建自定义模板。请查看此处的文档https://sonata-project.org/bundles/admin/master/doc/reference/templates.html

  

如果您愿意,可以在每个Admin映射上指定自定义模板   基础。在内部,CRUDController从中获取此信息   Admin类实例,因此您可以指定要使用的模板   管理服务定义

<强>更新

您还可以在两个管理类之间定义parentAssociationMapping关系,以获得更深层次的编辑。

在父级管理员中添加此方法:

<call method="addChild">
    <argument type="service" id="your_child_admin_service_id" />
</call>

在父管理员配置中添加:

protected $parentAssociationMapping = 'theNameOfTheParentPropertyInTheChildEntity';

在子Admin类中添加以下属性:

<mvc:resources location="/css/**" mapping="/css/"/>

通过这种方式,您将拥有一个包含所有已配置的子管理员

的侧边菜单