1

関数「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('image', 'string', array('template' => 'SonataMediaBundle:MediaAdmin:list_image.html.twig'))
            ->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(),
                )
            ))
        ;
    }

}

誰かがアイデアを持っている場合は?助けてくれてありがとう

4

1 に答える 1

0

Sonata Admin extensionsを使用してみてください。

于 2013-08-25T22:08:55.370 に答える