Я переписываю приложение, чтобы теперь использовать AngularFirebase.До сих пор я влюблен и действительно люблю поток приложения.То, над чем я бьюсь, - это основы размещения объектов в базе данных для извлечения без дополнительных вызовов базы данных, при этом не повторяя слишком много данных.Я знаю, что повторяющиеся данные в nosql - это нормально, но они приходят из мира реляционных БД ... это корректировка.
Итак, пример.У меня есть статистика, которую я хочу показать по игроку, игре и команде.В реляционном мире Моя таблица статистики будет содержать playerId и gameId, а игра будет иметь teamID ... так что я могу присоединиться и запросить.
У меня также есть награды, которые связаны с игроком и командой.
Думая о том, как я хочу получить данные ... Я хочу получать награды и хочу получать статистику.Таким образом, вместо таблицы игрока, игры, команды, менеджера, лиги и статистики ... как мне объединить эти ??
Может быть, для получения награды:
-id
-team {}
-player {}
-name
-description
...Я хочу показать имя игрока, а также название команды / год / неделю на странице с наградами.Кроме того, на моей странице Admin CRUD для добавления награды я хотел бы, чтобы в раскрывающемся списке были выбраны игрок и команда, не совершая 3 вызова в БД.
и что-то вроде:
-id
-game {}
-player{}
-team {}
...data
Это кажется слишком избыточной информацией, но если я просто использую playerID, GameId, teamId, у меня не будет возможности присоединиться и получить данные из этих объектов.
Опять же, для экранов администратора я хочу иметь возможность ввести игрока и игру один раз в объекте игрока и игры, а затем выбрать этого игрока и игру на странице статистики с помощью раскрывающегося списка.вместо того, чтобы вводить каждое имя и информацию об игре в дополнительное время каждый раз, когда я добавляю статистику.
Заранее спасибо!