繁体   English   中英

在 android 的 firestore 中创建一个自定义文档 id,而不是随机生成一个

[英]Create a custom document id in firestore in android, instead of generating random one

如何编辑此代码以便在 Firestore 中创建自己的自定义文档 ID?

users.add(new Accounts(fname, lname, uname, email, pass)).addOnSuccessListener(new OnSuccessListener<DocumentReference>() {
        @Override
        public void onSuccess(DocumentReference documentReference) {
            Toast.makeText(CreateAccount.this, "Data saved to FireStore", Toast.LENGTH_SHORT).show();
        }
    }).addOnFailureListener(new OnFailureListener() {
        @Override
        public void onFailure(@NonNull Exception e) {
             Log.d(TAG, e.toString());
        }
    });

如果要创建一个使用CollectionReference的add()方法时生成的自定义文档ID,请执行以下操作:

将具有指定POJO作为内容的新文档添加到此集合中,并自动为其分配一个文档ID。

您应该使用DocumentReference的set()方法:

覆盖此DocumentRefere引用的文档

如果要获取生成的文档ID或在参考中使用自定义ID,请使用以下代码行:

FirebaseFirestore rootRef = FirebaseFirestore.getInstance();
CollectionReference usersRef = rootRef.collection("users");
//String id = usersRef.collection("users").document().getId(); //Gets de generated id
String id = "yourCustomId";
Accounts accounts = new Accounts(fname, lname, uname, email, pass);
usersRef.document(id).set(accounts);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM