I have an app that is basically an internal job board for folks to sign up for volunteer opportunities within our agency. An “Organizer” creates an “Opportunity” with the appropriate information, but for the purpose of this question, they must select the appropriate date(s) and available role(s). Each Opportunity can have multiple dates, and each date can have multiple roles, with each role having an availability of one or more.
An “Applicant” submits an application for the date(s) they are available and the role(s) they are interested in for each date OR the role(s) they are interested in and the date(s) they are available for each role.
- The applicant should only have to submit one application per opportunity
- The organizer should be able to select each date and the role(s) available in the same screen
- The system needs to show how many of each role is available by opportunity and by date
- Once an application is approved for a date and role, the availability decreases by one for that date and role
Right now, I am managing the dates and roles via child records with Opportunities being the parent, Dates being the child of Opportunities, and Roles being the child of Dates. This is clunky to say the least with an Organizer having to go to the inline form view of Dates, enter a Date, then going to the inline form view for Roles and selecting the Role and number available, saving, going back into the Date form view, selecting the Roles form, rinse and repeat, saving the date, then going through the whole thing again for any addition dates.
Additionally, the Applicant in the application can only apply for a single day and role at this time, so they have to submit multiple applications for the same opportunity, which is a pain for them and the Organizer.
Here’s what it currently looks like for the organizer:
And the applicant:
My tables are:
Opportunities
Opportunity Days (these are the date children records)
Position Details (these are the role children records to the opportunity days)
Any recommendations on how to streamline this? I’ve looked at some other templates and they aren’t really what I’m looking for, so seeing if anyone has set up something similar.








