小编Bri*_*ick的帖子

使用序列化器时 Symfony 4 未定义属性错误

在对控制器进行 ajax 回调以从数据库获取注释时,出现以下错误:

注意:未定义的属性:App\Entity\ExceptionReport::$typeID

评论与与异常报告相关的用户相关,因此我猜测这种关系是引发错误的原因。我不确定设置最大深度是否是我需要实现的,所以我尝试在注释类中的用户字段上设置最大深度,但得到了相同的错误。

public function getComments(CommentRepository $commentRepository, SerializerInterface $serializer) {

        $comments = $commentRepository->findAll();
        $encoder = new JsonEncoder();

        $defaultContext = [
            AbstractNormalizer::CIRCULAR_REFERENCE_HANDLER =>function($object) {
                return $object->getUsername();
            }
        ];
        $normalizer = new ObjectNormalizer(null, null, null, null, null,
            null, $defaultContext);
        $serializer = new Serializer([$normalizer], [$encoder]);

        return $serializer->serialize($comments, 'json');
    }
Run Code Online (Sandbox Code Playgroud)

php symfony4

5
推荐指数
0
解决办法
1211
查看次数

标签 统计

php ×1

symfony4 ×1