4

Sonata Media Bundle のすべての機能を拡張およびオーバーライドする方法を教えてもらえますか? 私は Symfony2.3.​​3 と Sonata Master Bundle を使用しています。

このドキュメントhttp://sonata-project.org/bundles/media/master/doc/index.htmlを見て、次のような基本的なことを知っています:カスタムプロバイダー、トランスレーターなどを作成する方法..基本的なことはインストール後に機能しますが、私は知らない 。

関数「configureListFields」など、BaseMediaBundle をカスタムにオーバーライドする方法を探しています。

このバンドルのコントローラーは既にオーバーライドしていますが、BaseMediaAdmin はオーバーライドしていません。

このコードの問題は、エンティティ「メディア」がダッシュボードから消えることです!

//私のservices.xmlでは:

<service id="sonata.media.admin.media" class="Application\Sonata\MediaBundle\Admin\MediaAdmin">
    <tag name="sonata.media.admin" manager_type="orm" group="Gestion des médias"
        label="Média" />
    <argument />
    <argument>Application\Sonata\MediaBundle\Entity\Media</argument>
    <argument>Application\SonataMediaBundle:MediaAdmin</argument>
    <call method="setTranslationDomain">
        <argument>SonataMediaBundle</argument>
    </call>
</service> 

//私のアプリケーション内\Sonata\MediaBundle\Admin\MediaAdmin

namespace Application\Sonata\MediaBundle\Admin;

use Sonata\AdminBundle\Admin\Admin;
use Sonata\AdminBundle\Form\FormMapper;
use Sonata\AdminBundle\Datagrid\DatagridMapper;
use Sonata\AdminBundle\Datagrid\ListMapper;
use Sonata\AdminBundle\Show\ShowMapper;
use Sonata\AdminBundle\Route\RouteCollection;
use Sonata\MediaBundle\Provider\Pool;
use Sonata\MediaBundle\Form\DataTransformer\ProviderDataTransformer;

use Knp\Menu\ItemInterface as MenuItemInterface;

use Sonata\MediaBundle\Admin\BaseMediaAdmin as BaseMediaAdmin;


class MediaAdmin extends BaseMediaAdmin
{

/**
 * {@inheritdoc}
 */
protected function configureListFields(ListMapper $listMapper)
{
    $listMapper
        ->add('custom', 'string', array('template' =>  'SonataMediaBundle:MediaAdmin:list_custom.html.twig'))
        ->add('enabled', 'boolean', array('editable' => true))
        ->add('_action', 'actions', array(
            'actions' => array(
                'view' => array(),
                'edit' => array(),
                'delete' => array(),
            )
        ))
    ;
}

}

誰かが同じ質問をする: https://groups.google.com/forum/#!topic/sonata-users/l3D_Vrd0Hm4

私はそれをグーグルで検索しましたが、何も見つかりませんでした。誰でも知っていますか?

ありがとう!

4

2 に答える 2