繁体   English   中英

Sylius [管理员] 如何在存储库 function 中直接获取登录的用户详细信息

[英]Sylius [Admin] How to get logged user details directly inside the Repository function

我需要在存储库 function ( createListQueryBuilder ) 中获取记录的用户详细信息,而无需从 controller 传递用户详细信息。

这就是我的存储库的样子。

class ProductRepository extends BaseProductRepository
{
   public function createListQueryBuilder(string $locale, $taxonId = null): QueryBuilder
    {
        $queryBuilder = $this->createQueryBuilder('o')
            ->addSelect('translation')
            ->innerJoin('o.translations', 'translation', 'WITH', 'translation.locale = :locale')
            ->setParameter('locale', $locale)
        ;

        if (null !== $taxonId) {
            $queryBuilder
                ->innerJoin('o.productTaxons', 'productTaxon')
                ->andWhere('productTaxon.taxon = :taxonId')
                ->setParameter('taxonId', $taxonId)
            ;
        }

        return $queryBuilder;
    }
}

我已经在这里回答了。

有关更多上下文,此方法将用于Sylius Grid 配置,当 Doctrine doctrine/orm用作存储库方法 arguments 时,该配置支持Symfony 的表达语言

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM