微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

修改 Sonata Media Bundle 时预览列消失

如何解决修改 Sonata Media Bundle 时预览列消失

我正在修改 Sonata Media Bundle 的媒体管理屏幕以显示一个新字段。使用 Easy Extends 工具扩展包后,我创建了一个非常小的类来执行此操作:

English

...然后我将它添加到我的 namespace App\Application\Sonata\MediaBundle\Admin\ORM; use Sonata\AdminBundle\Form\FormMapper; use Sonata\MediaBundle\Admin\ORM\MediaAdmin as BaseMediaAdmin; class MediaAdmin extends BaseMediaAdmin { /** * {@inheritdoc} */ protected function configureFormFields(FormMapper $formMapper) { parent::configureFormFields($formMapper); $formMapper ->add( 'language',null,[] ) ->end(); } } 文件中:

services.yaml

虽然在 CMS 的管理屏幕上加载了新字段(“语言”),但我发现我现在只有一半的字段! “预览”选项卡完全丢失。 “媒体”选项卡中的字段存在,但该选项卡现在标记为“页面”。

对这里可能发生的事情有什么想法吗?

解决方法

事实证明,我不必经历重新声明具有所有依赖项的服务的整个巴洛克式舞蹈。相反,我需要在 services.yaml 中做的就是创建一个指向我的自定义类的新参数键:

parameters:
    locale: 'de'
    ...
    sonata.media.admin.media.class: 'App\Application\Sonata\MediaBundle\Admin\ORM\MediaAdmin'

在那之后,一切正常。博福!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。