我的应用程序中的所有 Firebase 用户在 Profile 集合中都有一个文档。当我像这样在 Flutter 中创建它们时,我的所有个人资料文档 ID 都等于 user.uid。在个人资料文档中,有...
我的应用程序中的所有 Firebase 用户在 Profile 集合中都有一个文档。
当我在 Flutter 中创建个人资料文档 ID 时,它们都等于 user.uid。在个人资料文档中,将有关于用户的公开数据,例如关注者、关注内容、喜欢的提交内容等。
final DocumentReference<Profile> reference =
Profile.collection.doc(**user.uid**);
await reference.set(
Profile(
username: _username!,
uid: user.uid,
reference: reference,
),
);
如何在 onDocumentCreatedWithAuthoContext 中获取用户的个人资料?我假设我可以获取授权用户的 uid 并在我的路径中使用它。
exports.onSubmissionLikeDocumentCreated = onDocumentCreatedWithAuthContext(
"submission/{submissionId}/like/{likeId}",
(event) => {
const batch = db.batch();
const submissionReference =
db.doc(`submission/${event.params.submissionId}`);
batch.update(
submissionReference,
{
likesCount: FieldValue.increment(1),
},
);
batch.update(
**How to get uid here?**
const uid = ?????????????
db.doc(`profile/${uid}`),
{
likedSubmissionReferences:
FieldValue.arrayUnion(submissionReference),
},
);
const reference =
event.data.ref;
batch.set(
reference,
{
reference,
createdAt: FieldValue.serverTimestamp(),
},
{
merge: true,
},
);
return batch.commit();
},
);