As a big fan of Django, I agree with most of this, but I think one thing that he is missing is the opinionated nature of Django. Its great for probably > 90% of web applications, but there are some use cases where the flexibility of Flask may be a better option.
One example would be the ORM. Its great for easy queries but when you need to do something complex the ORM is lacking (additional conditions on a JOIN for example). If you are going to need a lot of complex queries then maybe Flask / SQLAlchemy is worth the switch.
Author here, yes, Django is opinionated. That's for the good reasons and as you said it works for probably > 90% of web application. Although that percentage is rising with Django channels in some ways.
Django in this article is an example of a Full Stack Web Framework, usually when we gonna use a minimal framework such as Flask, bottle or Sanic, if and only if we're going to build something that can be categorized in full stack, then it would make much more sense to go with a Full Stack framework such as Django.
And yes, the flexibility that Flask or Sanic give is really high and tempting, but each come with a cost, either Django or Flask or any other framework.
There is AioHTTP as well if you're a bit curious but for early python and web developers this is a no-brainer, especially given that the "django" code-architecture (Note : Not Soft Arch..) is a kind of standard in python since everybody got to learn it someday.
4 comments
[ 2.5 ms ] story [ 19.2 ms ] threadOne example would be the ORM. Its great for easy queries but when you need to do something complex the ORM is lacking (additional conditions on a JOIN for example). If you are going to need a lot of complex queries then maybe Flask / SQLAlchemy is worth the switch.
Django in this article is an example of a Full Stack Web Framework, usually when we gonna use a minimal framework such as Flask, bottle or Sanic, if and only if we're going to build something that can be categorized in full stack, then it would make much more sense to go with a Full Stack framework such as Django.
And yes, the flexibility that Flask or Sanic give is really high and tempting, but each come with a cost, either Django or Flask or any other framework.