Скрыть Sonata Media Admin с панели инструментов - PullRequest
0 голосов
/ 02 февраля 2020

Я хочу удалить sonatamediaadmin из панели инструментов.

Я использую Compiler pass https://symfony.com/doc/4.4/service_container/compiler_passes.html

Теперь я добавил процесс src / Kernel. php функция (конечно, с class Kernel extends BaseKernel implements CompilerPassInterface)

public function process(ContainerBuilder $container)
{
    // in this method you can manipulate the service container:
    // for example, changing some container service:
        $definition = $container->getDefinition( 'sonata.media.admin.media' );
        if ( $definition ) {
            if ( $definition->hasTag( 'sonata.admin' )){
             //   var_dump($definition->getTag( 'sonata.admin' ));
             //   print "<hr>";

                $tags  = $definition->getTag( 'sonata.admin' );
                $tags[ 0 ][ 'show_in_dashboard' ] = false;
                $tags[ 0 ][ 'label' ] = "mymedia";
                $definition->clearTag( 'sonata.admin' );
                $definition->addTag( 'sonata.admin', $tags[0] );

              //  var_dump($definition->getTag( 'sonata.admin' ));
            }
        }

}

Тем не менее, носители не исчезли с приборной панели. и подтвердил, что теги корректно обновляются до того, как после

также очищается кеш php bin/console cache:clear

Что я пропускаю ??

array(1) { [0]=> array(6) { ["manager_type"]=> string(3) "orm" ["group"]=> string(30) "%sonata.media.admin.groupname%" ["label_catalogue"]=> string(45) "%sonata.media.admin.media.translation_domain%" ["label"]=> string(5) "media" ["label_translator_strategy"]=> string(38) "sonata.admin.label.strategy.underscore" ["icon"]=> string(30) "%sonata.media.admin.groupicon%" } }
array(1) { [0]=> array(7) { ["manager_type"]=> string(3) "orm" ["group"]=> string(30) "%sonata.media.admin.groupname%" ["label_catalogue"]=> string(45) "%sonata.media.admin.media.translation_domain%" ["label"]=> string(7) "mymedia" ["label_translator_strategy"]=> string(38) "sonata.admin.label.strategy.underscore" ["icon"]=> string(30) "%sonata.media.admin.groupicon%" ["show_in_dashboard"]=> bool(false) } }
...