无法使查询构建器正常工作以查找过去 7 天的所有帖子

Having trouble making a query builder work properly for finding all posts from last 7 days

我正在使用 Doctrine 查询生成器来尝试查找过去 7 天内出现的所有事件。这是我的代码:

return $this->createPublishedQueryBuilder('content')
                    ->andWhere('content.date BETWEEN :today AND :sevenDaysAgo')
                    ->setParameter('today', new \DateTime())
                    ->setParameter('sevenDaysAgo', new \DateTime('-7 day'))
                    ->orderBy('content.pageviews.weekly', 'desc')
                    ->setMaxResults($count)
                    ->getQuery()
                    ->getResult();

但它没有返回任何结果。最近添加的行是 andwhere 和下面的两个 setparameter 行,以便添加额外的搜索功能。任何关于正在发生的事情的想法都将不胜感激。

编辑 1: 没有运气切换 :today AND :sevenDaysAgo

这里我也忘了说是日期变量:

/**
 * @ORM\Column(type="datetime")
 *
 * @Serial\SerializedName("publication_date")
 * @Serial\Type("DateTime<'Y-m-d'>")
 * @Serial\Groups({"list", "fixture", "detail", "email"})
 *
 * @Assert\Date()
 *
 * @var DateTime
 */
protected $date;

我建议使用高于方法而不是使用中间查询。

return $this->createPublishedQueryBuilder('content')
                      ->andWhere('content.date > :sevenDaysAgo')
                      ->setParameter('sevenDaysAgo', new \DateTime('-7 day'))
                      ->orderBy('content.pageviews.weekly', 'desc')
                      ->setMaxResults($count)
                      ->getQuery()
                      ->getResult();

否则我没有发现您的查询有误。我想 "createPublishedQueryBuilder" 是有意的,是 "createQueryBuilder" ?

的抽象形式