当使用 StofDoctrineExtensions (这是 Gedmo Doctrine Extensions 的 Symfony2 端口)排序行为时,我不断收到此错误:
此存储库只能附加到 ORM 可排序侦听器
由于我无法在官方文档中轻松找到答案,因此我将在此处留下答案以供将来参考。
当使用 StofDoctrineExtensions (这是 Gedmo Doctrine Extensions 的 Symfony2 端口)排序行为时,我不断收到此错误:
此存储库只能附加到 ORM 可排序侦听器
由于我无法在官方文档中轻松找到答案,因此我将在此处留下答案以供将来参考。
您需要启用您正在使用的任何侦听器。在这种情况下,可排序。
stof_doctrine_extensions:
default_locale: en_US
orm:
default:
sortable: true
对于 Symfony 4,在/config/packages/stof_doctrine_extensions.yaml
. 对于旧版本的 Symfony,请将其添加到config.yml
.
为了使用 Sortable 行为,您需要将事件侦听器添加到包的引导方法
<?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);
}
}