我试图按照与当前实体无关的属性进行排序。
由于某些原因,如果@Gedmo \ SortableGroup的属性是当前权利的一部分,那么可排序对我不起作用。
这是我的实体:
https://gist.github.com/rat4m3n/91df50da8c653edfa3d0
将Doctrine \ ORM \ Mapping用作ORM;
使用Gedmo \ Mapping \ Annotation作为Gedmo;
/** * @Gedmo\SortableGroup * @ORM\Column(name="total_chips", type="integer") */ private $total_chips = 0; /** * @Gedmo\SortablePosition * @ORM\Column(name="ranking", type="integer") */ private $ranking = 0;
这根本不可能/不受支持吗?
否则......我怎么能以其他方式完成这种行为?
答案 0 :(得分:0)
如果您仍然对Gedmo的SortablePosition和SortableGroup功能有疑问,可以按照以下步骤操作:
激活config.yml
stof_doctrine_extensions: default_locale:fr_FR ORM: 默认: 可排序的:真的 tree:true
并将监听器添加到您的实体:
namespace Acme\AcmeBundle;
use Symfony\Component\HttpKernel\Bundle\Bundle;
class AcmeAcmeBundle extends Bundle
{
public function boot()
{
$em = $this->container->get('doctrine.orm. default_entity_manager');
$evm = $em->getEventManager();
$evm->addEventSubscriber(new \Gedmo\Sortable\ SortableListener);
}
}
namespace Acme\AcmeBundle;
use Symfony\Component\HttpKernel\Bundle\Bundle;
class AcmeAcmeBundle extends Bundle
{
public function boot()
{
$em = $this->container->get('doctrine.orm. default_entity_manager');
$evm = $em->getEventManager();
$evm->addEventSubscriber(new \Gedmo\Sortable\ SortableListener);
}
}