当前位置: 首页 > 知识库问答 >
问题:

如何以静态编程语言从Firebase实时数据库中检索嵌套数据结构

夏侯兴怀
2023-03-14

我试图从数据库检索提交的请求。

    userRef.addValueEventListener(object : ValueEventListener {

        override fun onCancelled(p0: DatabaseError) {
        }

        override fun onDataChange(snapshot: DataSnapshot) {
            if(snapshot!!.exists()){
                val children=snapshot!!.children
                for(item in children) {
                    val retrieveUser= item.getValue(User::class.java) //it crashes here
                    if (retrieveUser != null) {
                        userData.add(retrieveUser)
                    }
                }
            }
        }
    })

用户类

类用户(val userId:String=“”,val name:String=“”,val姓氏:String=“”,val profileImageUrl:String=“”,val submittedRequests:String=“”,val pickedPrequests:String=“”)

错误消息是:com.google.火基。数据库DatabaseException:未能转换java类型的值。util。哈希映射到字符串

如何从数据库中正确检索提交的请求?

共有1个答案

霍浩皛
2023-03-14

在您的User类中,您被声明为submittedRequests:String=”“。查看JSON,submittedRequests不是一个简单的字符串,而是一个嵌套对象或映射。

这应该更有效

submittedRequests:Map<String, Any>=hashMapOf<String, Any>()
 类似资料:
  • firebase数据库最近的更新似乎有一些变化。我的项目在firebase\u数据库:^7.0.0版本下运行良好,但在firebase数据库的更新版本中,我无法更新项目代码。 以下是v7的工作版本 firebase\u数据库^9.0.12上的同一代码出现错误。我收到的错误在`(DataSnapShot snap)async{…}上错误是 无法将参数类型“Future Function(DataSn

  • 我在firebase中具有以下结构。 为了检索数据,我使用以下代码- 调用onDataChange()时,p0包含除组数据之外的所有其他数据。 这是我的dataclass用户模型- 这是我收到的数据快照- datasnapshot!中没有组!。 更新添加了此行mFirebaseDatabaseReference?。保持同步(错误)。它昨天工作了几次,现在不工作了!

  • 我试图创建一个简单的程序,从用户的名字,手机号码和电子邮件地址,然后把数据在Firebase实时数据库。 有3个输入框和一个按钮,按一下就可以完成上面的操作。代码如下: 我这样设置了消防基地:

  • 请帮助我想从Firebase实时数据库检索一个特定的数据,我有2个用户,教授和学生,我想使用该数据进行验证。 FireBase实时数据库 FireBase实时数据库

  • 问题内容: 我目前正在学习Firebase和iOS的知识,因此请耐心等待。我当前正在发布到我的表,如下所示: 我正在尝试检索插入新记录时创建的内容,但是无法检索它。我已经尝试过( 但是由于浏览网页而无法找到一个可靠的解决方案,所以这是一个随机的猜测 )。有任何想法吗? 问题答案: 注意 :-Althogh 是自以来的一项强大功能,但是当您想创建具有唯一键的节点时更喜欢将数据存储到其中。我之所以喜欢