注入Symfony序列化程序会实例化所有规范化程序,如果注销则失败

时间:2018-12-07 15:26:08

标签: php symfony

我有很多使用Serializer组件的Symfony应用程序。大多数规范化者都需要访问当前用户,因此注入了TokenStorageInterface。直到我将SerializerInterface注入到没有当前用户(公共页面,例如登录表单)的控制器中之前,这一直很好。在$this->tokenStorage->getToken()->getUser()->getUsername()之类的User对象上调用getter会导致错误消息“在字符串上调用成员函数getUsername()”。该消息是正确的,因为如果没有实际用户登录,getUser()返回一个字符串。

事实证明,序列化程序实例化所有规范化程序,以便丢失的用户遇到问题。

我想念什么?如何在不初始化所有规范化器的情况下注入序列化器服务?

0 个答案:

没有答案