I am trying to implement a dynamic form, similar to Kickstarter’s new project page. In addition to the static form elements, the user can add an arbitrary number of rewards, and fill out a new form for each reward.
I have a repeating group with form items inside it, and I would like to populate a list of things from each cell’s form when the user submits the containing page. When I set the field (list of rewards) to the repeating group’s list of things, I only get the created/modified date inserted, but not the data from the forms inside the repeating group.
What’s the best way to get data from a form inside a repeating group, and assign it to a list of things?
Screenshot attached for reference. Thanks in advance!
You need a workflow that saves each reward form first. I’d have a save button inside the cell as well to do this. Click Save > Create new reward > save all the fields from the form. Then add the newly created reward to the project/user’s list of rewards field (which should be type = reward, list).
To be on the safe side, I’d also have a hidden field for Reward that allows you to reference the overall project or user so that the cross-referencing goes both ways. The project/user will have the List of Rewards, but you would also be able to search for rewards where project/user = a specific project/user.
The solution you’ve mentioned should work, but it’s not the most user friendly. Some user might forget to click the save button within a cell’s form, and lose all data.
Is it possible to save the fields in the form when any field value changes?
Good point! You could also auto-bind and/or trigger the creation of a new reward from inside the cell so that you do both actions in one: update current reward and create new.