Я новичок в структуре данных с Firebase.
Я прочитал это: https://firebase.google.com/docs/database/ios/structure-data
Я понял, что необходимо использовать уплощенную структуру.
Но я не уверен, как это сделать в реальном мире.
И я думаю, что для правильного использования Firebase rules
мне нужна подходящая структура (но у меня нет с этим опыта).
У меня есть 2 типа данных:
Список деталей:
parts: {
part1: {
chapter1: {
lesson1,
lesson2,
...etc
},
chapter2: {
lesson1,
lesson2,
...etc
},
chapterX: {
...etc
},
},
part2: {
chapter1: {
lesson1,
lesson2,
...etc
},
chapterX: {
...etc
},
},
partX: {
...etc
}
}
И список пользователей:
users: {
user1: {
name,
email,
...etc
},
user2: {
name,
email,
...etc
},
user3: {
...etc
},
etc...
}
- Каждый пользователь может подтвердить урок, и его ход должен быть сохранен.
- Если пользователь подтверждает все уроки: он проверяет главу.
- И если он проверяет все главы: он проверяет часть.
Я собираюсь структурировать свою базу данных Firebase следующим образом:
{
users: {
$uid: {
name,
email,
...
}
},
checked: {
user1: {
parts: {
part1: true
},
chapters: {
chapter1: true,
chapter2: true
},
lessons: {
lesson1: true,
lesson7: true,
lesson15: true,
}
},
user2: {
parts: {
part3: true
},
chapters: {
chapter1: true
},
lessons: {
lesson18: true,
lesson57: true,
}
}
}
}
И для Firebase rules
:
{
"rules": {
"users": {
"$uid": {
".write": "$uid === auth.uid"
}
},
"checked": {
"$uid": {
".write": "$uid === auth.uid"
}
}
}
}
Это правильный путь?
В порядке rules
В порядке?
Спасибо!