我想知道一个主题。我们可以在Laravel中使用本地作用域,但我不知道是否用于Symfony。
文件:Laravel Local Scopes
我的问题是我能在Symfony中使用它吗?这可能吗?
祝度过美好的一天
您可以对存储库中的经典方法执行同样的操作。我可以给你看一个例子(使用文档中的源代码(:
public function findAllGreaterThanPrice(int $price, bool $includeUnavailableProducts = false): array
{
// automatically knows to select Products
// the "p" is an alias you'll use in the rest of the query
$qb = $this->createQueryBuilder('p')
->where('p.price > :price')
->setParameter('price', $price)
->orderBy('p.price', 'ASC');
if (!$includeUnavailableProducts) {
$qb->andWhere('p.available = TRUE');
}
$query = $qb->getQuery();
return $query->execute();
// to get just one result:
// $product = $query->setMaxResults(1)->getOneOrNullResult();
}
此处不返回"$查询->execute((";,您可以返回$qb,链方法将可用。你可以这样做:
美元回购->findAllActive((->findAllGreaterThan12((;
这里$repo将是注入控制器中的存储库
在这两个方法中,您将只有一个where和querybuilder的返回。