Firebase группировка автоматически сгенерированных тегов ID - PullRequest
0 голосов
/ 29 мая 2018

Здравствуйте и спасибо заранее, используя swift 4- После получения моих данных Firebase я пытаюсь сгруппировать все по частям, автоматически сгенерированным дочерним ID (LKQvTZIe ...).Моя причина для этого заключается в том, что «изображение, план, заголовок» представляют собой один полный пост.Мне нужно отобразить ссылки в виде коллекции, которая связана с частями "title" и "planit" поста, поэтому каждый автоматически созданный идентификатор должен быть связан вместе.

Мой вопрос - Есть ли способ сгруппировать или назвать вещи по этим автоматически сгенерированным идентификаторам?

Мне кажется, это логичный способ убедиться, что все 3 из этих узлов сгруппированы вместе.enter image description here

ЭТО СМОТРЕТЬ РАЗДЕЛ НАГРУЗКИ

let userID = Auth.auth().currentUser?.uid
        ref = Database.database().reference()





    //ref.child("planits").observeSingleEvent(of: .value, with: { (snapshot) in
    ref.child("planits").observe(.value, with: { (snapshot) in


        let FirebaseDataDict = snapshot.value as! [String: AnyObject]

        print(FirebaseDataDict)
        // THIS GRABS THE EXACT USERS PLANIT DETAILS FROM THE DATA BASE
        for child in snapshot.children { //.value can return more than 1 match
            let snap = child as! DataSnapshot
            let dict = snap.value as? NSDictionary


            let senderID = dict!["senderId"]

            // IF USER ID EQUALS THE SENDER ID IN DATABASE, THEN UPLOAD THEIR PLANITS
            if userID == senderID as! String {


            let titleOfPlanit = dict!["title"] as! [String]


            let imagesForThisPlanit = dict!["images"] as! [String]

            let individualPlanName = dict!["plans"] as! [String]

                imagesInPlanit = imagesForThisPlanit

                self.nameOfSinglePlan = individualPlanName

                self.nameOfThisPlanit.append(contentsOf: titleOfPlanit)




            }
        }

    })

// ОТВЕТ JSON, ДЛЯ ИНСТАНЦИИ - ПЕРВЫЕ 3 БЛОКА КОДА, ОТНОСЯЩИХСЯ К ОДНОМУ ПЛАНИТУ, СЛЕДУЮЩАЯ 3 ПРИНОСИТСЯ К СВОЕМУ ОТДЕЛЬНОМУ ПЛАНИТУ

["marketing party "]
["https://img.evbuc.com/https%3A%2F%2Fcdn.evbuc.com%2Fimages%2F34047334%2F203533422144%2F1%2Foriginal.jpg?h=200&w=450&auto=compress&rect=234%2C0%2C734%2C367&s=26d86a54d46bcbe86ee2a2728f0b89b4", "https://img.evbuc.com/https%3A%2F%2Fcdn.evbuc.com%2Fimages%2F42440910%2F68964867283%2F1%2Foriginal.jpg?h=200&w=450&auto=compress&rect=0%2C318%2C4592%2C2296&s=3aa7bf43a9a2c647e92a6aa5d11ce1bc"]
["Digital Marketing Training in Pomona,CA-USA|Eduscil", "SoulfulofNoise The Tour @ Pomona"]
["send "]
["https://img.evbuc.com/https%3A%2F%2Fcdn.evbuc.com%2Fimages%2F45161425%2F210370190852%2F1%2Foriginal.jpg?h=200&w=450&auto=compress&rect=0%2C4%2C1920%2C960&s=b575da96cc7c5b13b36ba82e666e693a"]
["RRB Dance Company Parivaar Night"]

1 Ответ

0 голосов
/ 29 мая 2018

У меня нет никакого опыта в Swift, но вот что вы должны сделать с Firebase по сбору постов: Когда вы запрашиваете ребенка или ребенка, вы можете запросить UID для этих постов. Теперь вы можете заказывать детали очень нормально. Если выпонимать в Android или Java, вызовы:

ref.child("planits").child(Auth.auth().currentUser?.uid).
ref.child("planits").child(senderid).

Вы не можете публиковать никакие значения с одинаковыми именами. FireBase создает случайные имена для каждого нового дочернего элемента. Если вы намереваетесь создать дочерний элемент с тем же именем вребенок, я считаю, что это невозможно. Остальные части можно собрать по порядку Query

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...