Менеджер содержимого Firestore предоставляет удобный способ визуального создания, редактирования и добавления документов в базу данных Firestore. Эта функция включена в наши тарифные планы Pro.

В настоящее время подколлекции не поддерживаются в Content Manager.

Предварительные условия

Прежде чем приступить к работе с этим разделом, убедитесь, что вы:

  1. Знакомство со структурированием базы данных Firebase.
  2. Выполнили все шаги в разделе Firebase Setup для своего проекта.
  3. Добавили firebase@flutterflow.io в качестве редактора в проект Firebase и получили необходимые права.
  4. Создали коллекцию.
  5. Определили поля вашей схемы Firebase. В диспетчере содержимого Firebase отображаются только поля, определенные в схеме Firebase.

Открытие магазина Firestore Контент-менеджер

Чтобы открыть менеджер содержимого магазина Firestore:

  1. Перейдите на вкладку Firestore в левом боковом меню.
  2. Щелкните на пункте Управление содержимым. Откроется новое окно браузера.
ман 1

Добавление документа

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

Например, коллекция exam_result с базовыми полями выглядит следующим образом:

ман 2

Чтобы добавить документ, выполните следующие действия:

  1. Откройте менеджер содержимого Firestore.
  2. Выберите коллекцию, в которую вы хотите добавить документ, а затем выберите + Добавить документ. Появится всплывающее окно.
    1. Введите информацию для записи.
    2. Нажмите кнопку Добавить документ.
ман 3

Вот как выглядит добавленный документ:

ман 4

Загрузка CSV-файла для массового добавления

Возможно, вам потребуется перенести данные из другого места в коллекцию вашего текущего проекта. Добавление обширного списка записей по одной — невероятно трудоемкий процесс. Если вы можете получить или уже имеете данные в файле CSV (значения, разделенные запятыми), мы разрешаем загрузить CSV-файл, и ваши данные будут загружены в коллекцию всего за несколько шагов.

Для успешной загрузки данных:

  • Убедитесь, что в CSV-файле есть строки заголовка. Заголовок должен содержать точное название полей, имеющихся в вашей коллекции.
  • Если вы загружаете данные по широте и долготе, убедитесь, что они имеют формат (lat, lng) или [lat,lng].
  • Даты должны быть в формате YYYY-MM-DD HH:MM:SS, а часы должны быть в формате 24 часа (например, 2022-11-07 13:05:32).

Для лучшего понимания приводим пример сбора мест и CSV-файл:

ман 5

name,location,last_updated
Central,»(40.76835069123224, -73.97203144014624)»,2022-11-07 13:05:32
Museum,»(40.8217031079394, -73.9256367137398)»,2022-11-09 16:12:02
Zoo,»(40.85452267684994, -73.8774290321384)»,2022-11-04 03:05:54

Вот как выполняется загрузка CSV-файла:

  1. Откройте менеджер содержимого Firestore.
  2. Выберите коллекцию и нажмите кнопку Upload CSV (см. правый верхний угол). Откроется всплывающее окно.
  3. Нажмите кнопку Выбрать файл и загрузите CSV-файл.
  4. Теперь можно выбрать тип разделителя и ввести число строк для загрузки. Если оставить это значение пустым, то будут импортированы все записи.
  5. Нажмите кнопку Upload CSV.
  6. После загрузки файла вы увидите предварительный просмотр данных с указанием названия поля и его типа.
  7. Нажмите кнопку Проверить и импортировать. Если все выглядит хорошо, данные будут импортированы, и вы можете завершить работу и закрыть файл. Если возникнет проблема с несовпадением типов данных или с форматированием, появится сообщение следующего вида:
ман 6
ман 7

Если ваш CSV-файл содержит дополнительные поля, то вы пройдете быстрый процесс импорта полей, который добавит новые поля с их данными в вашу коллекцию.

ман 8

Добавление расширенных полей

Возможно, вам потребуется добавить некоторые расширенные поля для хранения таких данных, как ссылка на документ, дата-время, LatLng и несколько элементов.

Рассмотрим, как добавить их с помощью Firestore Content Manager.

Ссылка на документ

Для хранения ссылки на документ необходимо создать поле, тип данных которого установлен на Doc/Record Reference, а тип ссылки — на Collection.

Поле выглядит следующим образом:

ман 9

Чтобы добавить ссылку на документ, выполните следующие действия:

  1. Откройте менеджер содержимого Firestore.
  2. Сначала выберите Коллекцию, из которой вы хотите получить ссылку на документ.
  3. Щелкните на идентификаторе записи, чтобы скопировать ссылку на документ.
  4. Теперь выберите Коллекцию, в которую вы хотите добавить документ, и нажмите + Добавить документ. Появится всплывающее окно.
    1. Введите другую информацию для записи.
    2. Найдите поле, принимающее ссылку на документ, и вставьте его.
    3. Нажмите кнопку Добавить документ.
ман 10

Подробнее о том, зачем нужно хранить ссылки на документы, читайте здесь.

Date Time

Для хранения DateTime убедитесь, что у вас есть поле с типом данных Timestamp.

Поле выглядит следующим образом:

ман 11

Для добавления даты и времени:

  1. Откройте Менеджер содержимого Firestore.
  2. Выберите коллекцию, в которую вы хотите добавить документ, а затем выберите + Добавить документ.
    1. Появится всплывающее окно.
    2. Введите другую информацию для записи.
    3. Найдите поле, которое принимает значение DateTime.
    4. Щелкните на нем, выберите дату и нажмите кнопку OK.
    5. Теперь выберите Время и нажмите кнопку ОК.
      Нажмите кнопку Добавить документ.
Чтобы изменить заданное время, щелкните на поле Date Time еще раз, чтобы открыть диалог Date Picker.
ман 12

Lat Lng

Чтобы хранить широту и долготу любого места, необходимо создать поле с типом данных Lat Lng.

Поле выглядит следующим образом:

ман 13

Чтобы добавить значение Lat Lng для любого места:

  1. Откройте менеджер содержимого Firestore.
  2. Выберите коллекцию, в которую вы хотите добавить документ, а затем выберите + Добавить документ. Появится всплывающее окно.
    1. Введите другую информацию для записи.
    2. Найдите поле, которое принимает значение LatLng. Добавить LatLng можно двумя способами.
        1. Непосредственно добавить значение LatLng для любого места.
        2. Щелкните на значке поиска места (), чтобы найти и получить значение LatLng.
  3. Нажмите кнопку Добавить документ.
ман 14

Множественные элементы

Для хранения нескольких элементов одного типа данных, например, списка названий фруктов, необходимо создать поле с типом данных any from this и типом Field Type, установленным на List.

Поле выглядит следующим образом:

ман 15

Чтобы добавить данные в поле списка, выполните следующие действия:

  1. Откройте менеджер содержимого Firestore.
  2. Выберите коллекцию, в которую вы хотите добавить документ, а затем выберите + Добавить документ. Появится всплывающее окно.
    1. Введите другую информацию для записи.
    2. Найдите поле, которое принимает форму списка, и щелкните на нем.
    3. Нажмите + Добавить элемент и введите значение.
    4. Аналогичным образом добавьте еще несколько элементов.
    5. Нажмите кнопку Добавить документ.
ман 16

Пользовательский тип данных (он же Firestore Map)

Чтобы добавить данные в поле пользовательского типа данных, выполните следующие действия:

  1. Откройте менеджер содержимого Firestore.
  2. Выберите Коллекцию, в которую вы хотите добавить документ, а затем выберите + Добавить документ. Появится всплывающее окно.
    1. Введите другую информацию для записи.
    2. Найдите поле, принимающее пользовательский тип данных.
    3. Выберите пункт Tap to Set Fields (Установить поля) (Unset) или Tap to Edit Fields (Редактировать поля) (в зависимости от того, создается или обновляется документ). В результате откроется новое всплывающее окно.
    4. Введите значения для полей пользовательского типа данных.
    5. Выберите Сохранить данные.
    6. Нажмите кнопку Добавить документ.
ман 17

Обновление документа

Чтобы обновить документ, выполните следующие действия:

  1. Выберите значок карандаша в строке документа, который необходимо обновить. Также можно открыть запись, нажав длительное время на любое поле документа (кроме ID).
  2. Появится всплывающее окно. Обновите документ, если это необходимо, а затем выберите Обновить документ.
  3. Теперь обновленная информация будет отображаться в коллекции.
ман 18

Другие советы и рекомендации

  • При щелчке на поле ID происходит копирование *ссылки* в запись. Это полезная функция, когда необходимо сослаться на пользователя при создании документа.
  • При щелчке на активах открывается URL-адрес актива.

Вопросы и ответы

  • Получение ‘Ошибка обновления правил безопасности Firestore…’
ман 19

Ответ: Для устранения этой проблемы необходимо развернуть правила Firestore Rules.

  • Получение ошибки «Не удалось создать учетную запись в качестве firebase@flutterflow.io для вашего проекта Firebase.»
ман 20

Ответ: Если вы столкнулись с подобной проблемой, то вам просто необходимо включить функцию ‘Email Sign-In’ в проекте Firebase.

ман 21