【问题标题】:How to use LazyList's toJson method with json arrays?如何将 LazyList 的 toJson 方法与 json 数组一起使用?
【发布时间】:2019-07-09 22:05:00
【问题描述】:

我正在与两个表进行一对多关联:“usuarios”和“rol”这里没有问题,问题是我正在使用函数“toJson”将咨询结果转换为一个json格式的String,就像这样:

[
  {
    "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
        }
      ]
    }
  }
]

如你所见,它没有获取“concept”参数,它包含了“parents”的所有参数。

那么,有没有办法只获取一些参数?我如何访问 parent{rols} 参数的值?

我正在使用此代码来创建 json 字符串

LazyList<Usuarios> usuarios = Usuarios.where("activo = 1").include(Rol.class);
        String json = usuarios.toJson(true, "id_usuarios","concepto");
``


【问题讨论】:

    标签: activejdbc javalite


    【解决方案1】:

    LazyList.toJson() 文档可在此处找到:http://javalite.github.io/activejdbc/snapshot/org/javalite/activejdbc/LazyList.html#toJson-boolean-java.lang.String...-

    看起来你得到了正确的结果。如果您的concepto = null 可能实际上是数据库中的NULL?你调查过吗?

    此外,属性列表应用于当前模型,而不是子或父,这意味着在父节点下您将获得所有属性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-03
      • 2017-02-25
      • 2016-02-18
      • 2017-01-17
      • 1970-01-01
      • 2014-09-05
      • 2021-07-29
      • 2013-03-03
      相关资源
      最近更新 更多