doctrine教程3---查询生成器

Mario Sanchez

19 people read
Thumbnail

大多数时间我们并不会很DQL,而是使用查询生成器(QueryBuilder)

注释掉 DQL。让我们用 QueryBuilder 重建它

use Doctrine\Common\Collections\Criteria;
public function findAllOrdered(): array
    {
        //$dql = 'SELECT category FROM App\Entity\Category as category order by category.name DESC';
        //$query = $this->_em->createQuery($dql);
        //return $query->getResult();
        $qb
            = $this->createQueryBuilder('category')
            ->addOrderBy('category.name', Criteria::DESC);
        $query = $qb->getQuery();
        return $query->getResult();
    }

因为我们是在Category的存储库里写这个生成器,所以会自动把FROM App\Entity\Category添加进来。然后我们添加了Order by。 一个简单的工作就完成了

About Me

我是一位精通 Symfony 框架和 API Platform 的开发者,擅长构建高效、可扩展的 Web 应用程序和 API。 此外,我还具备 PrestaShop 模块开发经验,能够为您的电商平台定制功能,满足特定业务需求。