Как работают модели данных Appmaster.io
Взаимодействуя с приложением, вы «показываете» ему с какими данными и как нужно работать. Заводя учетную запись пользователя или набирая сообщение — создаете новые данные. Нажимая на кнопку «сохранить» — показываете, что их нужно не просто обработать сейчас, но и сохранить, чтобы использовать в дальнейшем. Выбирая «редактировать учетную запись» или «отправить сообщение» — даете команды поступить с ними определенным образом.
Вся информация вашего приложения хранится в базах данных. Они представляют собой упорядоченные структуры, в которых четко определено место для каждого элемента, указаны взаимосвязи между ними и то, как с ними можно работать. Базы данных могут быть построены по разным принципам, AppMaster.io использует классические реляционные базы данных, полностью совместимые с PostgreSQL.
Чтобы получить возможность заполнять ваше приложение информацией, нужно создать его базу данных:
- создать модели данных — то есть «объяснить» AppMaster Studio, какими будут ваши данные;
- установить связи между этими моделями.
Для этого в AppMaster Studio есть дизайнер моделей данных Data Design. В нем вы, как и обычные программисты, будете проектировать базу данных. Но вместо строк кода будете использовать инструменты визуального программирования.
Создайте свой первый проект в AppMaster Studio и перейдите в дизайнер Data Design, чтобы наглядно увидеть то, о чем будет говориться в этой статье.
Построение моделей данных
Модели данных (data models) — это «понятные» для AppMaster Studio описания того, что из себя представляет информация, которую вы добавляете в ваше приложение. Их можно сравнить с формами или чертежами: они определяют, как будут выглядят ваши данные, с какими другими данными они будут связаны, как их хранить и обрабатывать.
· Например, когда вы создаете в AppMaster Studio новый проект, в него автоматически добавляется модель User — по ней вы будете создавать учетные записи пользователей.
Создавая модели и настраивая их, вы проектируете базу данных вашего приложения.
Объект
Единица данных, которая создается в вашем приложении на основе конкретной модели, будет называться объектом.
· Например, учетная запись вашей сотрудницы Дженни Смит (созданная вами или самой Дженни через форму регистрации) будет объектом класса User (созданным по модели User).
В дизайнере AppMaster Studio вы будете только описывать и планировать будущие объекты, а вот создавать их можно только в готовом приложении.
Чтобы создать объект по модели данных, нужно добавить на страницу вашего приложения специальный элемент — например, форму регистрации. Добавлять элементы вы будете в дизайнерах приложений: Web Apps (для веб-приложений) и Mobile Apps (для мобильных приложений). Для получения информации об объектах используются другие элементы — таблицы, карточки — которые также добавляются в дизайнерах.
· Например, как только Дженни заполнит форму регистрации (эта форма генерируется автоматически при создании проекта) и нажмет Sign UP — в вашем приложении тут же будет создана и сохранена ее учетная запись. То есть появится новый объект, пользователь Дженни Смит. Посмотреть информацию о нем можно в таблице Users, которая также генерируется автоматически — в приложении Admin Panel.
Каждому объекту присваивается ID — идентификатор с уникальным номером, по которому ваше приложение будет «опознавать» его.
Поля
Каждая модель данных имеет поля, в которых содержатся характеристики будущих объектов и основные инструкции для вашего приложения, как с ними работать.
· Например, в модели User часть полей создается по умолчанию. В том числе — Login, Password, First Name и Last Name, которые Дженни заполнила при регистрации. Есть поле Groups, в котором будет указано, к какой группе пользователей относится учетная запись Дженни — по значению этого поля приложение определит, к каким функциям у нее есть доступ. Вы также можете создать дополнительные поля, например Address — чтобы добавить адрес Дженни в ее учетную запись.
Поля определяют, какие характеристики могут быть у объекта. То есть при его создании вам не обязательно заполнять их все — вы можете сделать это позже или не делать совсем. Вы также можете настроить автоматическое заполнение или установить некоторые поля, как обязательные.
Связи
Между двумя моделями данных можно установить связи — чтобы определить, как созданные по ним объекты будут друг к другу относиться и взаимодействовать.
Есть три типа таких связей:
· has_one — 1 объект, созданный по модели данных A, может быть связан только с 1 объектом, созданным по модели данных B.
· has_many — 1 объект, созданный по модели данных A, может быть связан с несколькими объектами, созданными по модели данных B.
· many_to_many — множество объектов, созданных по модели данных A, может быть связано с множеством объектов, созданных по модели данных B.
Связанные модели данных получают дополнительные возможности для совместной обработки в вашем приложении. Одна модель данных может быть связана с бесконечным количеством других — главное не усложнить логику связей настолько, что вы сами не сможете в ней разобраться.
Например: если ваше приложение позволяет сотрудникам создавать внутренние заявки (например, на покупку канцтоваров), то вы создадите модель Order (заявка) и свяжете c ней уже имеющуюся User через has_many — тогда Дженни сможет создавать множество заявок (например, каждый месяц или квартал). Если вы установите связь has_one — Дженни сможет создать только одну заявку.
Что дальше?
Итак, вы узнали основы работы с моделями данных в AppMaster Studio. Теперь создайте свою первую модель, используя эту инструкцию.
Чтобы настроить логику работы вашего приложения, используйте бизнес-процессы и эндпоинты.
Для настройки визуальной составляющей — редакторы Web Apps (создание веб-приложений) и Mobile Apps (создание мобильных приложений).
Добавить дополнительные функции можно с помощью модулей.
С таким жлобским бесплатным тарифом вы коммьюнити разработчиков не создадите. Даже на попробовать мало. Бесплатно только один экран в приложении, стыдливо названый "приложение" - это не серьезно.