簡體   English   中英

從 Firebase 數據庫中檢索嵌套數據 android

[英]Retrieve nested Data from Firebase Database android

我的 firebase 實時數據庫快照

我想提取“訂單”節點下的全部數據,請告訴我我的數據model我的數據class對於Kotlin中的android應該怎么處理?

我嘗試了這種類型的建模,在獲得 (Orders/uid/) 的參考后

訂單.kt

data class Order(
val items:ArrayList<Myitems>=ArrayList(), 
val timeStamp:Long=0, 
val totalCost:Int=0
)

我的項目.kt

data class MyItems(
val Item:ArrayList<Menu>=ArrayList() 
) 

菜單.kt

data class Menu(
val menCategory:String="",
val menName:String="", 
val menImage:String="", 
val menId:String="",
val menQuantity:Int=0,
val menCost:Int=0 
)

經過網上的大量思考和研究。 我終於能夠 model 我的課程並調用添加值事件偵聽器。 它是這樣的:

訂單.kt

data class Order(
    val items: ArrayList<HashMap<String, Any>> = ArrayList(),
    val timeStamp: Long = 0,
    val totalCost: Int = 0
)

OItem.kt

data class OItem(
    val menCategory: String = "",
    val menId: String = "",
    val menImage: String = "",
    val menName: String = "",
    val menPrice: Int = 0,
    var menQuantity: Int = 0


)

主活動.kt

val uid = FirebaseAuth.getInstance().uid
val ref = FirebaseDatabase.getInstance().getReference("Orders/$uid")

        ref.addListenerForSingleValueEvent(object : ValueEventListener {
            override fun onCancelled(error: DatabaseError) {
                //
            }

            override fun onDataChange(p0: DataSnapshot) {
                p0.children.forEach {
                    val order = it.getValue(Order::class.java)
                    ordList.add(order!!)
                }

                Log.d("hf", ordList.toString())
            }


        })

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM