Рекомендуемая структура данных Firebase для моего приложения react native

#firebase #react-native #firebase-realtime-database

# #firebase #react-native #firebase-база данных в реальном времени

Вопрос:

Я создаю приложение для бронирования медицинских услуг в react native, я почти закончил свой пользовательский интерфейс, и теперь я застрял в структуре данных в firebase. итак, способ работы приложения прост: регистрация / вход пользователя выберите врача или терапевта, и у этого терапевта есть некоторые даты и время, которые пользователь должен выбрать, чтобы назначить встречу.

итак, я считаю, что структурировать свои данные можно следующим образом:

введите описание изображения здесь

но мне нужен более простой подход, чтобы я мог получить все свои даты в виде массива и использовать его в своем календаре (чтобы пользователь мог видеть доступные даты), а также получить все тайминги для определенного дня, поэтому, когда пользователь выбирает время, другие пользователи тоже не могут его выбрать. как я могу структурировать эти данные в firebase? извините, я новичок в этой концепции, если вы считаете, что этот вопрос глуп, и я благодарен за любую помощь. если вам нужна дополнительная информация, просто дайте мне знать в разделе комментариев.

Ответ №1:

Возможно, вы захотите рассмотреть возможность извлечения собраний mg в его собственную коллекцию и использования дат в качестве идентификатора каждого документа.. Поэтому всякий раз, когда кто-то хочет забронировать встречу, вы проверяете, есть ли документ с идентификатором даты, и если нет, создайте встречу

Комментарии:

1. Когда я говорю использовать дату в качестве идентификатора, я имел в виду найти способ генерировать уникальную строку для каждой даты.. Вы можете использовать миллисекунды, чтобы получить мс, начиная с эпохи, и преобразовать это в строку.. Это должно быть уникальным для каждого времени

2. Привет, Кевин, спасибо за ваше предложение. Мне нужен способ отделить каждую дату или встречу от терапевта, поэтому, если я создам еще одну коллекцию только для собраний, это усложнит мою работу. даты связаны с терапевтами, поэтому у других терапевтов есть свои собственные даты.

3. Хорошо, поскольку все даты связаны с терапевтом, вы можете создать подборку собраний для каждого терапевта, которая соответствует тому, что я сказал ранее о датах

4. Однако я обычно советую не использовать вложенные коллекции, поскольку они могут быть легко удалены.. Если документ терапевта удален, он не удаляет автоматически свои собрания (вложенные коллекции). Поэтому обязательно следите за некоторыми вложенными коллекциями quarks

5. Эй, Кевин, ты, кажется, даешь рекомендации, основанные на облачном Firestore, в то время как OP использует базу данных в реальном времени. Тем не менее, рекомендация против вложенности на самом деле больше применима к базе данных реального времени, чем к облачному Firestore, и даже задокументирована в firebase.google.com/docs/database/web /…