如何序列化 sylius rest api 中的实体?
How can I serialize an entity in a sylius rest api?
目前我有一个具有区域类型字段的实体,但是当我将它序列化时 returns 我如下:
[..,
"zone": {
"__initializer__": {},
"__cloner__": {},
"__isInitialized__": false
},
..,
]
那是因为“zones”是一个非初始化的Doctrine惰性集合,也就是说它没有数据。
要用数据填充它,您必须显式地从数据库中获取关联的对象,将预先获取添加到关联配置中,或者通过在序列化之前调用 getter 来延迟加载它。
例如,如果您有一个带有查询生成器的存储库方法,您可以添加此代码来获取区域:
$this->createQueryBuilder('o')
->addSelect('zone')
->join('o.zones', 'zone')
目前我有一个具有区域类型字段的实体,但是当我将它序列化时 returns 我如下:
[..,
"zone": {
"__initializer__": {},
"__cloner__": {},
"__isInitialized__": false
},
..,
]
那是因为“zones”是一个非初始化的Doctrine惰性集合,也就是说它没有数据。 要用数据填充它,您必须显式地从数据库中获取关联的对象,将预先获取添加到关联配置中,或者通过在序列化之前调用 getter 来延迟加载它。
例如,如果您有一个带有查询生成器的存储库方法,您可以添加此代码来获取区域:
$this->createQueryBuilder('o')
->addSelect('zone')
->join('o.zones', 'zone')