集中模块设置和模型管理

时间:2016-09-27 02:22:25

标签: php silverstripe

我有一个模块,我需要:

  • 管理模型
  • 管理模块设置
    • API身份验证
    • Look&感觉
    • Etc

对于管理模型,我显然有一个ModelAdmin扩展名

对于后者管理模块设置,我必须创建一个DataExtension

虽然这会将“模块功能”分为两个部分,ModelAdmin会在侧边栏上显示自己的菜单项,但DataExtension只会在设置中添加标签菜单项。

我在ModelAdmin创建的同一菜单项中搜索了如何合并我的自定义标签但无效。

这可能吗?我理解ModelAdmin背后的语义是它只管理模型但是肯定存在功能,你可以在它创建的菜单项中添加标签而不是模型吗?

当然这不是一个异常情况

1 个答案:

答案 0 :(得分:3)

你能做到这一点的唯一方法就是扩展LeftAndMain(如你所说)。

这可能有点令人生畏,但LeftAndMain基本上只是3个模板的容器:

  1. 主管理模板
  2. 左手导航模板
  3. 主要编辑表格
  4. 在基本级别,你可以创建一个对LeftAndMain的扩展,然后添加一个自定义的“EditForm”函数,它具有你需要的设置字段(以及保存数据的动作)。

    然后,如果您希望它看起来更漂亮,那么您可以覆盖framework / admin / tempaltes中的默认LeftAndMain模板。

    Silverstripe网站上有一些文档:https://docs.silverstripe.org/en/3.4/developer_guides/customising_the_admin_interface/cms_layout/

    希望有所帮助。