在火力地堡,我们可以创建一个新的对象,像这样:访问对象的uid火力地堡
Firebase *postRef = [ref childByAppendingPath: @"posts"];
NSDictionary *post1 = @{
@"author": @"gracehop",
@"title": @"Announcing COBOL, a New Programming Language"
};
Firebase *post1Ref = [postRef childByAutoId];
[post1Ref setValue: post1];
而这个新的职位可能在通过URL来保存:http://app.firebaseIO.com/posts/$postuid
后来,当用户在上一些UIViewController
查看帖子,我们可能要发表评论。然而,为了发表评论,我们需要访问帖子的uid。看来唯一可行的方法是如果我们将uid保存到我们的post对象中?
基本上,最好的做法是将对象的uid存储在其中?
一般来说,Firebase中的uid会引用从authData.uid获得的用户uid。在这种情况下,你问你是否应该将用户uid(也许是发布它的用户的uid)作为post1Ref的子项存储? – Jay
@Jay我更一般地将uid称为唯一标识符。 – Apollo
不要:-)除非您特指通过Firebase身份验证方法分配的authData.uid,否则确实会造成混淆。唯一标识符将被称为父节点或可能是密钥。在这种情况下,答案是否定的,您不需要在节点内存储唯一标识符(密钥),因为它始终可以从snapshot.key获取。当然,值也是snapshot.value。可能有一些特殊情况,可能需要将其存储在节点内部,但通常不会。 – Jay