如何在 Symfony EasyAdmin 的 AssociationField 中添加条件

How to add condition in AssociationField in Symfony EasyAdmin

我正在构建图书管理系统。每本书都有很多章节。

当我按书过滤列表章节时,我想在创建新章节时隐藏关联字段书,或者至少由当前过滤器(书)过滤。

AssociationField 有一个名为 setQueryBuilder 的方法可以帮助您修改查询。

在您的情况下,您的关联字段应如下所示:

AssociationField::new('chapters')
            ->setQueryBuilder(function ($queryBuilder) {
                return $queryBuilder->andWhere(''); // your query

            });

您还可以使用存储库并调用其方法,但在 setQueryBuilder.

中返回查询生成器(而不是结果)