ios – Firebase Swift – 如何创建子项并将其id添加到另一个ref属性?

ios – Firebase Swift – 如何创建子项并将其id添加到另一个ref属性?,第1张

概述如 here所述,我想将Book对象存储在单独的ref中,并将其id值存储在User的books属性中 Users:user_id:121jhg12h12 email: "john@doe.com" name: "John Doe" profile_pic_path: "https://...". language: "en" exp_points: 1284 frien 如 here所述,我想将Book对象存储在单独的ref中,并将其ID值存储在User的books属性中
Users:user_ID:121jhg12h12  email: "john@doe.com"  name: "John Doe"  profile_pic_path: "https://...".  language: "en"  exp_points: 1284  frIEnds: [user_ID]  books: [[book_ID,status,current_page,start_date,finish_date]]  badges: [[badge_ID,get_date]]Books:book_ID: 3213jhg21  Title: "For whom the bell tolls"  author: "Ernest Hemingway"  language: "en"  pages_count: 690  ISBN: "21hjg1"  year: 2007

每当我在应用程序中添加一本书时

self.ref!.child("Books").childByautoID().setValue(["Title": arrayOfnames[0] as! Nsstring,"author": arrayOfnames[1] as! Nsstring,"pages_count":arrayOfnames[2] as! Nsstring])

book对象是在Books ref中创建的,但我想立即将其ID添加到User的用户书籍数组中.

可以用一些漂亮的方式完成,而不是查询书籍,检索它的ID并将其添加到数组中吗?

如果不是,查询刚刚创建的对象ID的正确方法是什么?

也许我不应该使用autoID模式并在应用程序中为自己创建每个对象的唯一ID?

解决方法 您可以通过以下方式获取childByautoID创建的密钥:
let newBookRef = self.ref!                      .child("Books")                      .childByautoID()let newBookID = newBookRef.key
let newBookData = [  "book_ID": newBookID,"Title": arrayOfnames[0] as! Nsstring,"pages_count":arrayOfnames[2] as! Nsstring]newBookRef.setValue(newBookData)
总结

以上是内存溢出为你收集整理的ios – Firebase Swift – 如何创建子项并将其id添加到另一个ref属性?全部内容,希望文章能够帮你解决ios – Firebase Swift – 如何创建子项并将其id添加到另一个ref属性?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1098335.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存