Я работаю над проектом, где у меня есть эти сущности: регион, сообщения и связь между регионом и сообщениями. В этой ссылке я также могу настроить некоторые дополнительные свойства, например, если сообщение может отображаться более одного раза для региона и если есть предварительное сообщение, которое должно быть показано ранее.AngularFire: как запускать запросы присоединения
Моя основная концепция базы данных:
Ниже, как я делаю свою базу данных:
Я хотел бы быть в состоянии показать список с именем сообщения, шоу и флаг имя обязательного сообщения, если оно заполнено.
Я использую объект $ firebaseArray делать мои регулярные списки, и я видел примеры того, как делать запросы, когда у вас есть структура вроде этого:
"region_messages":{
"xxxxxxx":true,
"yyyyyyy":true
}
Как я мог бы сделать в моем случае , моя структура сложнее. Я пытаюсь запросить использование углового огня, и мне нужно будет сделать то же самое в Swift 3.
Спасибо за помощь!
Вот мое дерево в JSON случае, если вы хотите запустить несколько тестов:
{
"messages" : {
"-KXSIeKHTM4lMRbeey2k" : {
"active" : true,
"name" : "link",
"type" : 3,
"url" : "http://www.google.com"
},
"-KXSIi_qw369nfU28lJJ" : {
"active" : true,
"name" : "video",
"type" : 4,
"url" : "http://www.youtube.com"
}
},
"region_messages" : {
"-KXfZYP8e--ZUgaVM9iL" : {
"-KXSIeKHTM4lMRbeey2k" : {
"pre_requisite_message_id" : "",
"show_only_once" : false
},
"-KXSIi_qw369nfU28lJJ" : {
"pre_requisite_message_id" : "-KXSIeKHTM4lMRbeey2k",
"show_only_once" : true
}
}
},
"regions" : {
"-KXfZYP8e--ZUgaVM9iL" : {
"major" : 1,
"name" : "Region 1"
}
}
}
См. Http://stackoverflow.com/questions/30299972/joining-data-between-paths-based-on-id-using-angularfire –
@FrankvanPuffelenI видел это перед тем, как спросить, поэтому я поставил кусок json в конец моего вопроса. Это не одно и то же, хотя я пытаюсь использовать NormalizedCollection –
Это действительно другое соединение, чем может обрабатывать Normalized Collection. Но другой вариант в этом ответе должен работать так, как я могу видеть: вам нужно будет расширять '$ firebaseArray'. –