swift2 无法从firebase数据库获取密钥

00jrzges  于 2022-11-06  发布在  Swift
关注(0)|答案(3)|浏览(214)

在我的学生程序员生涯中,我一直在思考最长的时间。我想知道

我使用autoChildId添加了密钥。

1.如何从firebase数据库swift 2获取密钥?我知道如何使用.getKeys()从Android获取
1.我最好的朋友,谷歌,教我使用allKeys。然而,我的友谊是在绝望的边缘,现在我收到了以下消息,我们的关系与.allKeys将永远失败(见下图)。唉...

1.我需要这个,以便显示数据从Firebase数据库到我的tableview,因为我相信这是一个空表的问题,就像我的心是我的项目。没有心。
下面是我的firebase数据库的外观:

下面是我的代码:

func findPlaceToEat(){
    print("inside findPlaceToEat()")

    print("Plan price level")
    print(planPriceLevel)
    print("End of price level")

    ref = FIRDatabase.database().reference()

    ref.child("places_detail").child("price_level").child(planPriceLevel).observeEventType(.ChildAdded, withBlock:{
        (snapshot) in

        if let dictionary = snapshot.value?.allKeys! as? [String: AnyObject]{
            let PlaceObj = placeObj(place_name: dictionary["place_name"] as! String, place_type: dictionary["place_type"] as! String, price_range: dictionary["price_range"] as! String, vegan_type:dictionary["vegan_type"] as! String , website: dictionary["website"] as! String)
            print("Whatever")

            print(PlaceObj);
            //self.tableView.reloadData()

        }
        }, withCancelBlock: nil)
}
ykejflvf

ykejflvf1#

从快照获取密钥

snapshot.key
mwyxok5s

mwyxok5s2#

我为我的项目找到了一个变通办法,大家请祈祷我的讲师不要看到这个。格:
我所做的是在保存按钮内,从数据库中检索值,然后将其保存回Firebase数据库。

ref = FIRDatabase.database().reference()

    ref.child("hello").child("google! I need a part time job").child(planPriceLevel).observeEventType(FIRDataEventType.ChildAdded, withBlock:{
        (snapshot: FIRDataSnapshot) in

        if let dictionary = snapshot.value as? [String: AnyObject]{
            let getPlaceObj = placeObj()

            getPlaceObj.setValuesForKeysWithDictionary(dictionary)
            self.PlaceObj.append(getPlaceObj)

            print("Name " ,getPlaceObj.place_name)

        }

        let place_name = snapshot.value?.objectForKey("place_name") as! String
        let place_type = snapshot.value?.objectForKey("place_type") as! String
        let price_range = snapshot.value?.objectForKey("price_range") as! String
        let vegan_type = snapshot.value?.objectForKey("vegan_type") as! String
        let website = snapshot.value?.objectForKey("website") as! String

        print(place_name, place_type, price_range, vegan_type, website)

        let savePlan : [String: AnyObject] = ["place_name":place_name, "place_type":place_type, "price_range":price_range, "vegan_type":vegan_type, "website":website]

        self.ref.child("can you place hire me as your intern? I am from Singapore!!!").child(self.user!.uid).childByAutoId().setValue(savePlan)

        }, withCancelBlock: nil)
vq8itlhq

vq8itlhq3#

您需要定义如下查询orderbykey:

this.afd.list('/yourItems/', {query:{orderByKey :true}}).subscribe((elements) => {

            elements.map(element=>{
              console.log(element.$key);

            })

        });

相关问题