Таблица с двумя ключами в Firebase - PullRequest
0 голосов
/ 21 мая 2019

У меня есть база данных Firebase для записи оценок учеников на упражнения.Существует объект «ученики», в котором хранятся все данные ученика, и объект «упражнения», в котором хранятся все детали упражнения.Теперь вопрос состоит в том, где поставить оценку, которую определенный ученик получает в определенном упражнении?

Когда ученик входит в систему, он должен показывать оценки этого ученика по всем упражнениям, поэтому имеет смыслпоставить все оценки в объекте «ученик».

Когда лектор входит в систему, он должен показывать оценки всех студентов по определенному упражнению, поэтому имеет смысл поместить все оценки в «упражнение».object.

Пока я ставлю оценки в обоих местах, но это приводит к ошибкам, и, очевидно, это ошибка проектирования, поскольку данные дублируются.

В базе данных SQL ясоздаст отдельную таблицу с именем «grades», и в качестве ключей в этой таблице будут указаны «student_id» и «training_id».Таким образом, легко найти все оценки либо по student_id, либо по exerc_id.

Как я могу это сделать в Firebase?

1 Ответ

0 голосов
/ 21 мая 2019

думаю, что я бы добавил все ученики и упражнения в коллекцию оценок и просто собрал все их оценки, и, вероятно, продублировал дополнительные данные, необходимые из коллекции учеников + упражнения, как вы предлагаете, аналогично подходу sql.

если бы не то, я бы, вероятно, извлекать поддержку для запросов subcollectin, как я верю его на пути?таким образом, каждое упражнение может содержать информацию об ученике в качестве подколлекции, в любом случае дублировать данные и думать как представления SQL.

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