我正在与两个表进行一对多关联:“ usuarios”和“ rol”,这里没有问题,问题是我正在使用函数“ toJson”将咨询结果转换为JSON格式的字符串,就像这样:
[
{
"activo":1,
"alta":null,
"contrasenia":"AA123.aa",
"edicion":null,
"editor_alta":null,
"editor_edicion":null,
"email":"dadadada@ssfsfds",
"id_division":0,
"id_pools":1,
"id_roles":2,
"id_usuarios":1234567895,
"nombre":"Javier",
"primer_apellido":"a",
"segundo_apellido":"a",
"parents":{
"rols":[
{
"activo":1,
"alta":"2019-07-08",
"concepto":"Administrador Pool",
"descripcion":"Usuario que gestiona a los agentes",
"edicion":null,
"editor_alta":1111111111,
"editor_edicion":null,
"id_permisos":2,
"id_roles":2
}
]
}
}
]
但是我只想在json中获取一些参数,例如,我只想拥有“ id_usuarios”和“ parents {rols [conecepto]}”参数,因此我在toJson方法中指出了名称这些参数,但结果json是这样的:
[
{
"id_usuarios":1234567895,
"concepto":null,
"parents":{
"rols":[
{
"activo":1,
"alta":"2019-07-08",
"concepto":"Administrador Pool",
"descripcion":"Usuario que gestiona a los agentes",
"edicion":null,
"editor_alta":1111111111,
"editor_edicion":null,
"id_permisos":2,
"id_roles":2
}
]
}
}
]
如您所见,它不是在获取“概念”参数,而是包括了“父母”的所有参数。
那么,有什么方法可以获取一些参数吗?我如何才能访问parent {rols}参数的值?
我正在使用此代码创建json字符串
LazyList<Usuarios> usuarios = Usuarios.where("activo = 1").include(Rol.class);
String json = usuarios.toJson(true, "id_usuarios","concepto");
``
答案 0 :(得分:0)
LazyList.toJson()
文档可在此处找到:http://javalite.github.io/activejdbc/snapshot/org/javalite/activejdbc/LazyList.html#toJson-boolean-java.lang.String...-
看起来您得到正确的结果。如果您的concepto = null
可能实际上是数据库中的NULL
?你调查了吗?
此外,属性列表适用于当前模型,而不适用于子级或父级,这意味着您将在“父级”节点下获取所有属性。