Aug 15, 2021·3 min read

How AppMaster.io Data Models Work

Learn the basics of working with data models on our no-code platform.

How AppMaster.io Data Models Work

Any application is a system for processing data (information presented in the form of a program code). While interacting with the application, you "show" the data and how it is supposed to work with it.

By starting a user account or typing a message, you create new data. By clicking on the "save" button, you show that they need to be processed now and saved to use in the future. Choosing "edit account" or "send a message" - give commands to deal with them in a certain way.

Database Query Execution Schemes

All information for your application is stored in databases. They are ordered structures that clearly define the place for each element, indicating the relationships between them and how you can work with them. Databases can be built on different principles, AppMaster.io uses classic relational databases, fully compatible with PostgreSQL.

An example of a relational data schema

To be able to fill your application with information, you need to create its database:

  • create data models - that is, "explain" to AppMaster Studio what your data will be;
  • establish links between these models.

For this, AppMaster Studio has a Data Design data model designer. In it, you, like ordinary programmers, will design a database. But instead of lines of code, you will use visual programming tools.

AppMaster.io Data Models Designer

Create your first project in AppMaster Studio and go to the Data Design Designer to get a glimpse of what this article is about.

Building data models

Data models describe the information you add to your application that is “understandable” for AppMaster Studio. They can be compared to shapes or drawings: they determine how your data will look, with what other data it will be associated with, and how it is stored and processed.

  • For example, when you create a new project in AppMaster Studio, the User model is automatically added to it - from which you will create user accounts.

By creating and customizing models, you design your application's database.

An object

A unit of data that is generated in your application based on a specific model will be called an object.

  • For example, your employee Jenny Smith's account (created by you or by Jenny herself through the registration form) will be an object of the User class (created by the User model).

In the AppMaster Studio designer, you will only describe and plan future objects, but you can create them only in the finished application.

To create an object from a data model, you need to add a special element to your application page - for example, a registration form. You will be adding elements in the application designers: Web Apps(for web applications) and Mobile Apps(for mobile applications). To obtain information about objects, other elements are used - tables, cards - which are also added in designers.

  • For example, as soon as Jenny fills out the registration form (this form is generated automatically when creating a project) and clicks Sign UP, her account will be created and saved in your application. That is, a new object will appear, user Jenny Smith. You can view information about it in the Users table, which is also generated automatically in the Admin Panel application.

Each object is assigned an ID - an identifier with a unique number by which your application will "recognize" it.

Fields

Each data model has fields that contain the characteristics of future objects and basic instructions for your application on how to work with them.

  • For example, in the User model, some of the fields are created by default. Jenny filled in during registration including - Login, Password, First Name,#nbsp;First Name, and Last Name. There is a Groups field, which will indicate which user group Jenny's account belongs to - by the value of this field, the application will determine which functions she has access to. You can also create additional fields, such as Address, to add Jenny's address to her account.

The fields define what characteristics the object can have. While creating it, you do not need to fill in all of them - you can do it later or not do it at all. You can also set up auto-complete or set some fields as required.

Connections

Relationships can be established between two data models - to determine how objects created from them will relate to each other and interact.

Link types in AppMaster.io

There are three types of such links:

  • has_one- 1 object created from data model A, can only be associated with 1 object created from data model B.
  • has_many- 1object created from data model A, can be associated with multiple objects created from data model B.
  • many_to_many- a set of objects created from data model A can be associated with many objects created from data model B.

Linked Data Models gain additional capabilities for collaborative processing in your application. One data model can be associated with an infinite number of others - the main thing is not to complicate the logic of connections so much that you yourself cannot figure it out.

For example: if your application allows employees to create internal orders (for example, for the purchase of stationery), then you create an Order model and associate an existing User with it through has_many- then Jenny can create many orders (for example, every month or quarter). If you establish the has_one relationship, Jenny will only be able to create one ticket.

What's next?

So you've learned the basics of working with data models in AppMaster Studio. Now create your first model using this instruction.

To customize the logic of your application, use business processes and endpoints.

To customize the visual component - editors Web Apps (creating web applications) and Mobile Apps(creating mobile applications).

You can add additional functions using modules.

Read our blog and telegram channel to learn more about no-code development and the AppMaster.io platform. Join the community telegram cha t to chat directly with our programmers and other no-coders!

FAQ

What is a data model in AppMaster?

A data model defines the information your application stores. It lists the fields each record can have and lets you connect that information to other models.

What database does AppMaster use?

AppMaster uses relational databases that work with PostgreSQL. You design models and their relationships visually, then AppMaster uses that structure for the application data.

What is an object in a data model?

An object is one actual record created from a model. For example, a single employee account is an object created from the User model.

What are fields used for?

Fields describe the details stored for each object, such as a name, email address, password, or account group. You can add fields that match your own application needs.

Do users have to fill in every field?

No. You decide which fields users must complete and which they may leave empty. You can also add default values or fill fields later through your app's logic.

Why does each object need an ID?

Each object gets a unique ID. Your application uses that ID to tell one record apart from every other record, even when two records have similar names.

When should I use a has_one relationship?

A has_one relationship connects one object to one object. For example, you could connect one user account to one employee profile.

What does a has_many relationship mean?

Use has_many when one record can relate to several records. A User model can have many Order objects, so one employee can create more than one order.

When do I need a many_to_many relationship?

Use many_to_many when records on both sides can have several connections. For example, many users can belong to many projects, and each project can include many users.

How do I create my first data model in AppMaster?

Create a project, open the Data Design area, and add a model with the fields you need. Then add relationships only where your application needs records to work together.

Easy to start
Create something amazing

Experiment with AppMaster with free plan.
When you will be ready you can choose the proper subscription.

Get Started