I’m developing a form builder for a non-profit association that supports people with disabilities, and I’ve hit a major roadblock regarding mandatory field validation.
Project Overview:
- Data Structure:
- “Form”: Linked to both Responses and Fields
- “Fields”: Contains the question and the expected response format; linked to the Form
- “Response”: Linked to the Form and Field Values
- “Field Value”: Linked to the Field (the question) and the user’s answer
- Implementation:
- I display the form using a repeating group.
As Bubble.io doesn’t allow saving inputs directly from repeating groups with a single button click, each input is saved separately. I use the plugin “Orchestra” to do that (it allow to run a workflow in each cell of the repeteing group) and so I record each field as “Field Value”.
- I display the form using a repeating group.
The Problem:
- My main issue is enforcing mandatory (required) fields.
In Bubble, all inputs, even those marked as required, are considered “valid” until the user interacts with them. Once an input is touched and then left empty, Bubble’s native validation kicks in. - When an input is invalid, the workflow for that particular cell is completely aborted. This is problematic because:
- I need to record somewhere that a required input is missing, so I can indicate that the form overall is not valid.
- Even if I set a conditional state change when an input is invalid, the entire cell’s workflow is blocked, preventing any further action or recording of the error.
- I’m using the Orchestra plugin to trigger workflows on individual cells in the repeating group. The plugin itself works perfectly, but the issue remains: Bubble stops the workflow execution as soon as it encounters an invalid input.
What I’ve Tried:
- I’ve thoroughly researched forum discussions and analyzed various templates focused on building form builders.
- I even looked into the dynamic form solution (see EasyForm – FormBuilder), which successfully validates the form only when all required inputs are valid. However, this template costs $250—an expense that our association simply cannot afford.
My Question:
How can I enforce that the entire form is only accepted if all mandatory inputs are valid, while still being able to record the fact that an invalid input exists, without having the entire workflow for a cell aborted? Has anyone encountered this limitation with required fields in a repeating group and found a workaround?
I appreciate any insights or suggestions you might have. This project is important for us, so any help is greatly appreciated.
Thank you!