通过虚拟财产 API 平台进行 OrderFilter(排序)

Vip*_*ulw 5 php symfony api-platform.com

    class SingleProduct extends AbstractEntity implements SingleProductEntityInterface
    {

        /**
         * @ORM\Id()
         * @ORM\GeneratedValue()
         * @ORM\Column(type="integer")
         * @Groups({"read", "get"})
         */
        private $id;

        /**
         * @var string
         * @ORM\Column(name="name", type="string", length=255, nullable=true)
         *  @Groups({"read", "get"})
         */
        private $name;

        /**
         * @ORM\Column(name="main_han", type="string", length=20, nullable=true)
         * @Groups({"read","get"})
         */
        private $mainHan;

        /**
         * @ORM\Column(name="main_ean", type="string", length=13, nullable=true)
         * @Groups({"read","get"})
         */
        private $mainEan;

       /**
       * @Groups({"read","get"})
       */

       private $nbCatalogs;

    }
Run Code Online (Sandbox Code Playgroud)

在这个实体中,我正在 nbCatalogs 的 getter 中计算关系实体的数量。上述其他字段是数据库中的列。当我添加

@ApiFilter(OrderFilter::class, properties={"id", "name","mainHan","mainEan","nbCatalogs"}, arguments={"orderParameterName"="order"})
Run Code Online (Sandbox Code Playgroud)

我可以按 id、name、mainHan、mainEan 对 asc 和 desc 进行排序,但无法按我创建的“nbCatalogs”虚拟属性进行排序。如何实现按属性 nbCatalogs 排序?