Symfony 在onfigureListFields奏鸣曲中上下对位

Symfony 在onfigureListFields奏鸣曲中上下对位,symfony,sonata-admin,symfony-sonata,Symfony,Sonata Admin,Symfony Sonata,我遵循了这一点: 单击“向上”或“向下”按钮,然后显示: The controller for URI "/admin/xxx/frontend/abc/1/move/down" is not callable. 我不知道为什么 这是我的代码: Config.yml sonata.admin.abc: class: XXX\AdminBundle\Admin\ABCAdmin tags: - { name: sonata

我遵循了这一点:

单击“向上”或“向下”按钮,然后显示:

The controller for URI "/admin/xxx/frontend/abc/1/move/down" is not callable.
我不知道为什么

这是我的代码:

Config.yml

         sonata.admin.abc:
        class: XXX\AdminBundle\Admin\ABCAdmin
        tags:
            - { name: sonata.admin, manager_type: orm, group: "Home", label: "Abc" }
        arguments:
            - ~
            - XXX\FrontendBundle\Entity\ABC
            - XXXAdminBundle:ABCAdmin
            - PixSortableBehaviorBundle:SortableAdmin
        calls:
            - [ setContainer, [ @service_container ] ]
            - [ setPositionService, [@pix_sortable_behavior.position]]
         sonata.admin.abc:
    class: XXX\AdminBundle\Admin\ABCAdmin
    tags:
        - { name: sonata.admin, manager_type: orm, group: "Home", label: "Abc" }
    arguments:
        - ~
        - XXX\FrontendBundle\Entity\ABC
        - PixSortableBehaviorBundle:SortableAdmin
    calls:
        - [ setContainer, [ @service_container ] ]
        - [ setPositionService, [@pix_sortable_behavior.position]] 
ABCAdmin.php

class ABCAdmin extends Admin
{
public $last_position = 0;

private $container;
private $positionService;

public function setContainer(\Symfony\Component\DependencyInjection\ContainerInterface $container)
{
 $this->container = $container;
}

public function setPositionService(\Pix\SortableBehaviorBundle\Services\PositionHandler $positionHandler)
{
 $this->positionService = $positionHandler;
}

protected $datagridValues = array(
 '_page' => 1,
 '_sort_order' => 'ASC',
 '_sort_by' => 'position',
);

protected function configureRoutes(RouteCollection $collection) {
$collection
    ->add('move', $this->getRouterIdParameter() . '/move/{position}');
}

public function prePersist($page) {

}

protected function configureListFields(ListMapper $listMapper)
{
    $this->last_position = $this->positionService->getLastPosition($this->getRoot()->getClass());
    $listMapper
        ->add('_action', 'actions', array(
            'actions' => array(
            'move' => array('template' => 'XXXAdminBundle:Sortable:_sort.html.twig'),
    )));

}

}

谢谢

我的错误我修复了它:-

Config.yml

         sonata.admin.abc:
        class: XXX\AdminBundle\Admin\ABCAdmin
        tags:
            - { name: sonata.admin, manager_type: orm, group: "Home", label: "Abc" }
        arguments:
            - ~
            - XXX\FrontendBundle\Entity\ABC
            - XXXAdminBundle:ABCAdmin
            - PixSortableBehaviorBundle:SortableAdmin
        calls:
            - [ setContainer, [ @service_container ] ]
            - [ setPositionService, [@pix_sortable_behavior.position]]
         sonata.admin.abc:
    class: XXX\AdminBundle\Admin\ABCAdmin
    tags:
        - { name: sonata.admin, manager_type: orm, group: "Home", label: "Abc" }
    arguments:
        - ~
        - XXX\FrontendBundle\Entity\ABC
        - PixSortableBehaviorBundle:SortableAdmin
    calls:
        - [ setContainer, [ @service_container ] ]
        - [ setPositionService, [@pix_sortable_behavior.position]] 
当我删除arguments部分中的admin类并使用SortableAdmin类时,它就开始工作了