我在 Symfony2 项目中有一个 Doctrine 过滤器。我试图在每个请求上将过滤器的参数设置为某个值(取自会话)。问题是过滤器对象是在 Symfony 的 onKernelRequest 事件之后创建的,所以我不能从那里设置它。如果我尝试在 Doctrine 的 postConnect 事件循环依赖中设置它:
ServiceCircularReferenceException: Circular reference detected for service "doctrine.orm.private_entity_manager", path: "routing.loader -> assetic.asset_manager -> twig -> translator.default -> doctrine.orm.private_entity_manager -> doctrine.dbal.private_connection -> year_visibility.parameter_setter".
问题是,我应该在哪里(或者更确切地说如何)设置过滤器的参数?