Need to create a multi-part form. How to do this with Express objects?
The Express form block is the most powerful one but also the hardest to work with.
If you look at the Express form block's view you will see that the whole form is rendered elsewhere using
That means that if you want any control over how the form fields are displayed, you have to go into overriding core classes and in this case, it's not an easy task.
Also, if there are any errors in the form on submission (a required field is empty, an email address is wrong) the page will reload and indicate there's an error but you won't get any information from the error message to tell you in which "step" your faulty input is so you can take the user to the right one.
The legacy form, on the other hand, is much less powerful but also much more straightforward and easier to template and do what you want with.
No matter which you choose, though, you will have to code most of it and use some out-of-the-box thinking to solve problems.