如何从Firebase数据库中检索包含子名称的字符串列表?

拉吉迪普

我正在Kotlin中开发一个应用程序,并且已经设置了Firebase数据库。我可以将数据写入数据库,但是无法读取数据库中的数据。这是我的数据库的图像:

数据库映像

我想无论是检索所有标题的列表BasicsFunctionsLoops为了获得更多的上下文,这是一个教人们如何在Kotlin中进行编码的应用程序,在进度标签下,我基本上列出了用户在我的应用程序中完成的所有主题。因此,如何查询数据库以检索say下列出的所有标题的列表Basics我希望最好突出一个包含字符串Condition的字符串列表Datatype我只需要他们为该特定部分完成的主题名称(在这种情况下为Basics)。所以基本上,我需要的孩子的名字BasicsFunctionsLoops

我的进步班:

package nus.is3261.kotlinapp
import com.google.firebase.database.IgnoreExtraProperties

@IgnoreExtraProperties
class Progress {
    var completed: String? = null

    constructor() {
        // Default constructor required for calls to DataSnapshot.getValue(Post.class)
    }

    constructor(time: String) {
        this.completed = time
    }

}

我如何将数据写入数据库:

/**
 * For firebase database
 */
private fun submitProgress(str: String, chapter: Int) {
    val currentUser = mAuth!!.currentUser
    // if user is not logged in, don't write
    currentUser?:return
    val time = SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(Calendar.getInstance().time)
    val progress = Progress(time)
    when(chapter){
        1 -> mProgressReference!!.child(currentUser.uid!!).child("Progress").child("Basics").child(str).setValue(progress)
        2 -> mProgressReference!!.child(currentUser.uid!!).child("Progress").child("Loops").child(str).setValue(progress)
        3 -> mProgressReference!!.child(currentUser.uid!!).child("Progress").child("Functions").child(str).setValue(progress)
    }
}
亚历克斯·莫莫

根据您的意见,以显示以下的儿童BasicsFunctionsLoops请使用如下代码:

String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference progressRef = rootRef.child("Users").child(uid).child("Progress");
ValueEventListener valueEventListener = new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        for(DataSnapshot dSnapshot : dataSnapshot.getChildren()) {
            for(DataSnapshot ds : dSnapshot.getChildren()) {
                String key = ds.getKey();
                Log.d(TAG, key);
            }
        }
    }

    @Override
    public void onCancelled(@NonNull DatabaseError databaseError) {
        Log.d(TAG, databaseError.getMessage());
    }
};
progressRef.addListenerForSingleValueEvent(valueEventListener);

您的logcat中的结果将是:

Condition
Data Type
Recursion
When
While

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Android Studio / Flutter中从Firebase数据库创建特定集合的字符串列表

如何在SQL Server数据库表中插入字符串列表

如何从 Firebase 数据库中检索数据并将其存储为字符串?

将实体中的列表转换为数据库中的单个字符串列

在 MVC 中,如何从数据库中检索匹配包含数字的字符串序列号范围的记录?

将 django 数据库文本字段的结果存储在字符串列表中

从Firebase数据库表中检索列表中的数据

将Firebase数据库中的特定值检索到字符串变量中

如何使用空手道中的包含将字符串列表与子字符串匹配

如何在使用eventBus将发送的字符串用作子名称的同时从Firebase检索数据?

尝试从数据库中的字符串检索数据

如何在Android Studio的Firebase数据库中检索1个孩子以下的数据列表

如何使用JavaScript从Firebase中的嵌套数据库中检索所有子级

如果数据帧的任何列中包含子字符串列表中的任何值,则过滤行

尝试从 firebase 数据库( swift )中检索类别列表

如何从SQLite数据库在Android中检索字符串格式的数据

如何对包含日期作为子字符串的字符串列表进行排序

字符串是否包含PHP中的任何子字符串列表?

如何在Django中创建QuerySet以查看数据库中的名称是否是查询字符串的子字符串?

如何修复“ MongoError:数据库名称不能包含字符'/'”

如何从Firebase实时数据库获取包含唯一密钥的字符串

如何使用angularFire从Firebase数据库中检索用户列表,并且不带“键”?

检查数据框中的值是否包含字符串列表中的字符串

如何从Firebase中的实时数据库检索数据?

如何从 Firebase 数据库中检索特定数据

展平包含子列表的字符串列表

如何替换字符串列表中字符串的具体子字符串?

如何从存储在数据库中的JSON字符串检索字段

如何从 xamarin 的本地数据库中检索字符串值?