Question

When usieing StofDoctrineExtensions (which is a Symfony2 port of Gedmo Doctrine Extensions) Sortable behaviour I kept on getting this error:

This repository can be attached only to ORM sortable listener

Since I could not easily find the answer in official docs I'm leaving an answer here for future reference.

Was it helpful?

Solution

You need to enable any listeners you are using. In this case, Sortable.

stof_doctrine_extensions:
    default_locale: en_US
    orm:
        default:
            sortable: true

For Symfony 4, add this configuration in /config/packages/stof_doctrine_extensions.yaml. For older versions of Symfony, add it to config.yml.

OTHER TIPS

In order to use Sortable behaviour you need to add an event listener to your bundle's boot method

<?php

namespace Acme\DemoBundle;

use Symfony\Component\HttpKernel\Bundle\Bundle;

class AcmeDemoBundle extends Bundle
{
    public function boot()
    {
        // get the doctrine 2 entity manager
        $em = $this->container->get('doctrine.orm.default_entity_manager');

        // get the event manager
        $evm = $em->getEventManager();
        $evm->addEventSubscriber(new \Gedmo\Sortable\SortableListener);
    }
}
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top