我怎样才能通过学说获得除一个以外的所有数据?

How can I get all data via doctrine except one?

我正在通过学​​说获取数据:

$pages = $this->getDoctrine()->getRepository(Pages::class)->findAll();

我想要的是获取所有数据,除了带有 slug 的数据 cat

所以我试图实现这样的目标:

$pages = $this->getDoctrine()->getRepository(Pages::class)->findAllExcept(['slug'=>'cat']);

最好使用自定义存储库 class。

<?php

namespace AppBundle\Repository;

use AppBundle\Entity\Pages
use Doctrine\ORM\EntityRepository;

class PagesRepository extends EntityRepository
{
    /**
     * @param $slug
     * @return Pages[]
     */
    public function findAllExceptThis($slug)
    {
        return $this->createQueryBuilder('pages')
            ->andWhere('pages.slug != :slug')
            ->setParameter('slug', $slug)
            ->getQuery()
            ->execute();
    }
}