In concrete5 version 8, we introduced Express, an easy way to create custom data objects right from the concrete5 Dashboard. We've also completely overhauled the form block: forms that you create the front-end of your site automatically create Express objects in the backend.
In concrete5 version 8.1 we're adding a small but very welcome feature update: now, when adding a Form block to the page, you can choose to create a new form (which is the current behavior), or you can choose from a Form you've already created for a particular Express object!
For example, if I've created a public database of Boats and Marinas, with the Boat object having a Many-To-One association to the Marina object. I've created a form through the Express Dashboard page for my Boat object, with form controls for my various custom attributes as well as my association:
What if I want to render this form publicly on my website, in order to let people publicly submit content to my boats database? In the past I'd have to create a custom block. Now I can just use the Form block.
That's it! Just add a Form block to the page, choose Existing Express Entity, and choose the form for the particular Entity you want. Simple!
concrete5 8.1 is scheduled for release on Monday, January 23, 2017.