Form block

The fastest way to build forms

Form blocks combine all the necessary components to build a comprehensive and flexible form.

There are three key types.

TypeFieldsSave button
CreateProvides blank fields to be filled out.Creates a new row.
UpdateProvides pre-populated fields based on the record that matches the row ID.Updates the existing record.
ViewProvides pre-populated read-only fields based on the provided row ID.N/A

Next you can select a table which will provide the Datasource and Schema. This supports both the Budibase internal table, as well as the core SQL databases.

If you want to use a custom schema then you will need to Eject the block.

Row ID

When selecting Update or View type, you will need to provide a row ID so that the form block knows which row data to populate the fields with.

For example, when adding a Details side panel the Row ID will be set to the App state of the Clicked row.

Fields

After you pick a table schema, you will be able to configure your fields using the right side panel.

Form field configuration

Form field configuration

Click on the cog to customize field placement, actions, validation, and much more.

Configuring form fields

Configuring form fields

When configuring fields you can determine which fields should be shown in the form, the order of those fields, and the label.

Buttons

Depending on the selected type, you will have the option to show or hide the form action buttons. For example, Update type will have the following options:

To hide the save or delete button, simply remove the label value from the field input.

If you do not want to perform navigation after the button presses, you can clear the navigation field.

Ejecting

A form block can be ejected to expose it's constituent parts. When a Create type form is ejected, it will appear similar to the following:

The Update type is similar, but will also include the Data provider and Repeater necessary to provide the row detail.

Notifications

You can disable notifications on form edition by selecting the 'Disable notifications' option in the block settings.