Привет, ребята, в этом блоге мы рассмотрим, как реализовать хранение данных в MongoDB Atlas с помощью MongoDB Realm SDK и Flutter.

Что такое Царство?
Realm — это мобильная база данных, где мы можем хранить данные локально в базе данных. Крутое преимущество использования Realm заключается в том, что данные будут храниться локально до тех пор, пока Интернет не будет отключен, после того, как Интернет будет включен, у него есть возможность автоматически синхронизировать данные с Atlas, и если мы хотим синхронизировать данные на устройстве, то с помощью устройства Синхронизация в MongoDB Atlas позволяет синхронизировать данные на устройстве. Посетите официальный Realm для получения дополнительной информации.
Этот блог является продолжением моего предыдущего блога, проверьте его, чтобы двигаться в правильном направлении.
Войдите в MongoDB Atlas и создайте новые службы приложений в разделе Службы приложений.


После перехода к новым службам приложений перейдите в раздел Аутентификация › Поставщики аутентификации и включите параметр Разрешить пользователям входить анонимно.

Теперь перейдите в раздел Синхронизация устройств › выберите Гибкая и включите режим разработки.


Теперь под определением имени базы данных создайте новую базу данных и назовите ее как мотивационную, выберите эту базу данных и нажмите «Включить синхронизацию».

Создайте новое имя коллекции и назовите его Quotes. Теперь в разделе «Правила» дайте разрешение readAndWriteAll для коллекции Quotes и нажмите «Сохранить».


ПРИМЕЧАНИЕ. Если вы запускаете приложение в MacOS, предоставьте доступ в Интернет в файле DebugProfile.entitlements.

Теперь скопируйте идентификатор приложения и после инициализации приложения внутри void main и передайте идентификатор приложения, скопированный из атласа mongoDB в AppConfiguration и проверьте, вошел ли пользователь в систему или нет, если нет, то используйте Credentials.anonymous() для входа без запроса имени пользователя и пароля и передайте Объект пользователявнутри QuotesNotifier.


В нашем предыдущем блоге мы использовали Configuration.local для локального хранения данных, но теперь нам нужно изменить его на Configuration.flexibleSync, чтобы синхронизировать данные с базой данных и между устройствами. . Чтобы сохранить синхронизацию между базой данных и нашим приложением, нам нужно обновить нашу подписку на область котировок, добавив realm.all‹Quotes›().

Теперь, когда вы запускаете свое приложение и добавляете новые данные, вы можете увидеть изменения, которые могли быть отражены в нашем атласе MongoDB. Теперь, в зависимости от выполняемой нами операции, эти изменения могут быть отражены в базе данных.


Ура! и мы закончили работу с Flutter Realm SDK — Device Sync.
Вы можете ознакомиться со всем проектом на моем GitHub.
https://github.com/AgnelSelvan/Blogs/tree/main/realm_flutter_example
Вы знаете, что можете нажать кнопку хлопка 50 раз? Чем выше вы поднимаетесь, тем больше мотивирует меня писать для вас больше материала!
Здравствуйте, меня зовут Агнел Селван. Нуб-разработчик. Вы можете найти меня на Linkedin или следить за мной на GitHub.

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