序列化复杂对象ORM实体处理关系实体

时间:2011-09-26 15:23:55

标签: json coldfusion coldfusion-9

在ColdFusion 9中,我正在序列化一个ORM实体。但是,在执行此操作时,它缺少关系实体。

ColdFusion用于将复杂对象转换为JSON表示法的serializeJSON()方法似乎无法在ORM对象上正常工作。在ORM对象上使用serializeJSON()时,不会返回任何具有其他对象数组属性的对象!

之前有没有人解决过这类问题?你是怎么处理的?

感谢。

2 个答案:

答案 0 :(得分:1)

问题解决了!这不是你必须将remotingFetch设置为true的错误!默认情况下,对于具有一对一,一对多,多对一或多对多关系的属性,它设置为false。

答案 1 :(得分:1)

我遇到了与远程方法类似的问题,并提出了一个递归函数,它将内省你的CFC并发回你需要的属性。您可以指定(使用CFC上的属性)您执行和不想返回的属性。实际上,您可以通过属性的“组”来执行此操作,因此您可以将“id”和“name”分配给“compact”组,将CFC中的其余属性分配给“full”组。它还将处理序列化嵌套组件(ORM或其他)。另一个很大的优点是Adobe的序列化方法不会从继承的对象中序列化属性。因此,如果您有父对象,则序列化时不会返回这些属性。我的toSerializable()方法解决了这个问题。

检查出来:http://www.justcodefaster.com/blog/2012/07/toserializable-method-for-coldfusion-objects/