![](/img/trans.png)
[英]Serializer using Normalizer returns nothing when using setCircularReferenceHandler
[英]Symfony Serializer: setCircularReferenceHandler() is deprecated
Symfony的(FrameworkBundle v4.2.5)序列化程序组件(v4.2.5)现在在日志中告诉我:
php.INFO: User Deprecated: The "Symfony\Component\Serializer\Normalizer\AbstractNormalizer::setCircularReferenceHandler()" method is deprecated since Symfony 4.2, use the "circular_reference_handler" key of the context instead.
但问题是,我没有明确调用此方法。 该调用实际上是由SymfonyFrameworkBundle触发的。
我在我的framework.yaml中有这个:
serializer:
enabled: true
circular_reference_handler: Cbp\Utils\CircularReferenceHandler
我在FrameworkExtension(由FrameworkBundle提供)中看到了这一点:
if (isset($config['circular_reference_handler']) && $config['circular_reference_handler']) {
$container->getDefinition('serializer.normalizer.object')->addMethodCall('setCircularReferenceHandler', [new Reference($config['circular_reference_handler'])]);
}
所以我的问题是:如何解决此弃用通知?
事实证明,这是文档和FrameworkExtension中的错误。
错误报告可以在这里找到。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.