I am trying to understand the logic and processes that I should employ when planning out my pages. For instance, when should I use the Bootstrap 4 Form Generator and when should I create a form manually? An example of this is a single page which will be used to record the details of an inspection.
The form on this page will consist of about 40 fields, some to record numbers, some a selection from dynamic pull-down menus and some will need a description of condition. These fields will be uploaded into a single record in a single table (tbl_dg_inspection) in the database (dg_db). But almost always there will be a need for a multi file upload field. These files will be uploaded to a dynamically created directory specifically for this inspection and file names and other image specific details will be uploaded to a second table (tbl_dg_inspection_images) in the database related to the first table.
Bootstrap 4 Form Generator seems to be great at creating a form with 40 fields that are all from one table but not, as in this case, when there is a repeat that will upload to a second table.
It wouldn’t be too bad if I was only going to do this once or twice, but there are around 25 different forms to be created and more to follow. Can the Bootstrap 4 Form Generator be used to create what I want?
In the past I have done similar things where I have created the form dynamically on the fly, where the logic looked at the database table and worked out the input tags based on the number of fields, anything with “_ID” or “_FK” were set as hidden ID fields, and there were database tables describing input field tags along with their descriptive names or labels. It also allowed for easy multi-lingual labelling of form fields. This was also an easy way to add an additional field into a database because that would then be automatically reflected in the form when it was next generated so no additional form modifications were required.
Sorry for the long drawn out post, hopefully you get the gist of what I am trying to say and ask.
Last updated: