当用户在我的角度应用中创建帐户时,我的应用会使用电子邮件和密码创建用户帐户(使用Firebase API)。但我也想创建新的集合来保存更多的数据,如姓名,姓氏......
每个集合的名称都有uid。
但我不知道如何强迫它?
db.createCollection('abcXdefX')
不存在。
我不知道该怎么做。请帮忙。
答案 0 :(得分:4)
您无法创建空集合,您必须在其中创建文档。 data model
function writeUserData(userId, name, email, imageUrl) {
firebase.database().ref('users/' + userId).set({
username: name,
email: email,
profile_picture : imageUrl
});
}
您可以通过这种方式获取用户ID
var userId = firebase.auth().currentUser.uid;
适用于云端防火墙
db.doc(userId + '/data').set({
name: name,
email: email
});
答案 1 :(得分:0)
我正在尝试在文档中创建一个集合,但可接受的答案对我不起作用,但这确实可以做到:
db
.collection("coll1")
.doc("doc1")
.collection("newCollectionName")
.doc("newDocName")
.set(data);
答案 2 :(得分:0)
在 Firestore 中,当您将文档添加到不存在的集合时,该集合将被创建,而无需专门创建它。例如,
firebase.firestore().collection("new-coll").add({"Hello":"World"})
如果集合 new-coll
不存在,则创建该集合并将文档 {"Hello": "World"}
添加到其中。
答案 3 :(得分:-1)
您还可以在集合内创建文档。您不必每次都创建不同的集合。
db.collection("users").doc("userid").set({
username: 'username',
password: 'password',
email: 'email',
age: 'age'
})