Skip to content

How do you create a custom multi-select in Adalo?

Create a custom Adalo multi-select with relationships, join records, selected and unselected component states, duplicate protection, and explicit test cases.

Sources checkedIntermediateReviewed Aug 12, 2026Actions and LogicWatch time 5:07

Short answer

Represent selections with a many-to-many relationship or a join collection, then show selected and unselected component states based on whether the current option is related to the current user or parent record.

Original walkthrough

Sep 9, 2021

The intended outcome

A selectable list where each option can be independently added or removed and the visual state reflects saved data.

Requirements

  • A collection of selectable options
  • A user or parent record that owns the selections
  • A relationship or join collection

Step by step

  1. Step 1: Choose the data model

    Use many-to-many for a simple association; use a join collection if each selection needs metadata such as order or quantity.

  2. Step 2: Render the options

    Create a list of all selectable records.

  3. Step 3: Create two visual states

    Design selected and unselected versions and control them with opposite visibility rules.

  4. Step 4: Add and remove the relationship

    The unselected state adds the current option; the selected state removes it.

  5. Step 5: Verify persistence

    Leave and return to the screen to confirm visual state comes from saved data rather than temporary UI state.

The underlying logic

The database relationship is the source of truth.

Opposite visibility rules make the two states appear as one control.

A join collection is more flexible when the relationship itself needs properties.

Data model

Collections, important properties and relationships
CollectionImportant propertiesRelationships
Users or parent recordsNameHas many selections
OptionsLabel, Sort OrderCan be selected by many parents
Selections (optional)Order, Quantity, Created DateJoins one parent to one option

What changed?

  • The refreshed answer explains when a direct many-to-many relationship stops being sufficient.

Common failure modes

Testing checklist

0 of 7 checked on this device

Current limitations

  • Use a join collection when a selection needs quantity, order, notes, or other metadata.

Screenshot evidence

These captures document what Adalo currently publishes and what builders are reporting. They support the written guidance, but they are not a substitute for an end-to-end test in your own app.

Current Adalo Resources guidance describing many-to-many relationship behavior
Official documentation explains the many-to-many relationship used by simple multi-select membership.Official documentation · captured Aug 12, 2026: Official documentation explains the many-to-many relationship used by simple multi-select membership.
Current Adalo Resources update action instructions for changing an existing record
The current Update action is the documented mechanism for changing an existing record.Official documentation · captured Aug 12, 2026: The current Update action is the documented mechanism for changing an existing record.
January 2025 Adalo forum response about multiple relationships and selection controls
A recent builder report describes updating an existing record and notes a free marketplace multi-select.Adalo forum · captured Aug 12, 2026: A recent builder report describes updating an existing record and notes a free marketplace multi-select.

What the Adalo community is reporting

These are concise editorial summaries of public forum posts, not endorsements or independently reproduced results.

Create record that has multiple relationships

The reply says many-to-many selections are stored by updating an existing record and discusses marketplace or button-and-boolean interfaces.

Boundary: The thread reports that the desired database-style multi-select UI is not a built-in front-end form control.

Judith · January 2025

Sources and status

This page was last reviewed on Aug 12, 2026. Its current status is Verified from current public evidence.

Verification owner: Adalocado editorial. Next review: Oct 12, 2026.

Changelog

  1. Added current relationship and action captures plus a January 2025 multi-select report.

Written and maintained by the Adalocado editorial team under the editorial and verification policy.

Did this solve your problem?

One-click check

Bugs fixed. Updates shipped. Publishing handled.

$97/mo for your first 3 months.

Cancel anytime. That’s about 90% off the usual cost. 🤯

Let Rehost handle it
  • Bug fixes and troubleshooting
  • App updates and integrations
  • Publishing and store releases

Bring us the messy version.

Describe what you expected, what happened instead, and what you already tried.

Ask Adalocado

Related answers

Browse all