I've never been more involved in web development than the last 6 months of my life. The choice of framework and design is never to be taken lightly; rather, it should be thought out very carefully before you even start building any website. However, I've noticed that we all go for the one that we're most familiar with, which to some extent makes sense because it greatly reduces development time. Yes, time is precious but I've been having issues with code bases that use static site generators for dynamic websites.
The take away of this post is simple: don't use static site generators if you need back-end programming. Static site generators (SSG) are created to serve one thing and one thing only: serving flat files like HTML. SSGs were born to be faster than dynamic site generators and it's because they don't have to communicate with databases. Rather, the content is saved as flat files and is served by a HTTP server.
If you need a database like MySQL or MongoDB, that probably indicates you shouldn't opt for an SSG. It unnecessarily complicates the configuration. If your site is to be handed over to someone else for maintenance, this creates more pain in the ass than it should, so if you were thinking of using one when your site needs more than just HTML, please please please please think otherwise.