最近在使用 symfony5 执行$this->json() 返回结果是报错: 主要是Entity 里有ManyToOne的关联关系,然后有相关的解决办法解决办法给 Entity 字段分组,如下格式: User /**
- @Groups("main") */ private $id;
/**
- @Groups("main") */ private $filename;
/**
- @Groups("other")
- ManyToOne */ private $countries
重要的是,给这个关联关系和其它字段取不一样的Groups 即可,但是这个有问题,当一个Entity有很多个字段的时候,需要加 好多个 Groups 太麻烦了。 上面的写法,用json输出就是: return $this->json( $user, 200, [], [ 'groups' => ['main'] ] );
后来我研究了一下,只要取消 $countries 的 getCountries() 方法就可以了,保留setCountries()方法,这样在json()输出(serializer)以后 就不会报错了。
