In ZF2, I have a controller that handles 5 forms. The 5 forms get displayed on a single page (index
), and all the forms processing happens in the indexAction()
based on a form's submit button pushed (just one form is submitted at a time).
To me, having many forms in a single controller is ugly because the processing logic isn't simple (too many if-elseif
's based on the value of the submit button, many services injected into the controller through the controller factory).
How can I get the dependencies out of the controller to simplify the controller logic and reduce the number of dependencies? But I still need 5 forms on a single page, and need to process a form based on the submit button pushed.
I thought of creating a single controller for a single form (controller gets the form via factory), but have no idea how to stuff multiple controllers into a single view. Another option is to have actions that process dedicated forms (one action => one form), but that still keeps to many form dependencies in the controller.
Any help?