# Forms

*Skill Level: Beginner*&#x20;

## Before You Begin

* Should have knowledge about [Databases](https://help.adalo.com/database)

## Walkthrough

{% tabs %}
{% tab title="In-Depth" %}

### Forms

Forms are the primary way your users can create and edit records in your app's database.  For example, if a user needs to create a new trip, you can send them to a screen with a form where they can fill out all the details of the trip such as name, description, date, etc.

When you create a form, you will set which collection the form is for and whether the form is creating a new record or editing an existing record.  If you select an Edit Form, then the fields on the form will be pre-populated with the current values, so the user can decide which need to be changed.

### Form Fields

![](/files/-LinYgu-dUiVe9AEDI6n)

Each piece of information collected on a form is a field.  A field saves data into a property in the collection you choose.  By default, all collection properties are added to the form, except for relationship properties.

You can drag the fields to re-arrange their order on the form.

Clicking the trash can icon will remove any field you do not wish to include on the form.

In the "Set Automatically" section, you can automatically set data that you don't want your users to manually fill out.

* For example, in the app shown above, a user can plan a new trip using a form. All fields are visible in this case except for the trip creator and the privacy of the trip, which are automatically set.&#x20;

### Submit Button

You can customize the text of the form's submit button as well as edit its styles.  It is also very common to add an Action to the submit button to link the user back to the screen they came from.
{% endtab %}

{% tab title="Video" %}

{% embed url="<https://youtu.be/Oh7WBI9jLmQ>" %}

{% endtab %}
{% endtabs %}

{% hint style="warning" %}
If using the User 'Password' field, it must be required or you will get an 'Action cannot be completed' error if it is left blank. As a best practice, we recommend using a separate flow when allowing a User to update their Password.
{% endhint %}

### Watch a Video

Watch a short video explaining how to create custom forms in the Adalo builder.

{% embed url="<https://youtu.be/mD1Q8Hi6TUo>" %}

## Help

You can get a better understanding on how to set up forms with the [Forms course](https://appacademy.adalo.com/course/forms) made by Paul Okoduwa for the [Adalo App Academy](https://appacademy.adalo.com/homepage). <br>

If you need additional help with this article, you can always ask in our [community forum](https://forum.adalo.com/)! Be sure to paste the link to this article in your post as well!


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.adalo.com/component-basics/forms-and-fields/how-to-create-and-edit-forms-and-fields.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
