←back to thread

310 points brylie | 1 comments | | HN request time: 0.221s | source
Show context
nop_slide ◴[] No.43517655[source]
I appreciate this effort and am surprised by the negative sentiment. I evaluated the big 3 frameworks (Laravel, Django, and Rails) last year and Django felt like the worst of the lot.

I really wanted to like Django more since I use python at $dayjob, but it seemed so far behind Laravel and Rails terms of DX and features. Also the ecosystem seemed fragmented and a lot of packages looked stale.

For example, I remember having to piece together a static files pipeline for Django with whitenoise, how is that not included by default?

Additionally the issues around the user model are bizarre, near the very end of the docs they tell you to override the user model to fix it. Wat.

Lastly Django templates felt super limiting, Livewire/Laravel and Hotwire/Rails gives you so much out of the box.

I ended up choosing Rails to start building side web apps, their move to SQLite-first and the whole “Solid” suite of tools is rad. Specifically Solid Queue is awesome! I noped out of Django when I saw how intense the docs for setting up celery were.

Hoping this spurs some activity in the Django-sphere, I would love if Django felt more complete like Rails!

replies(3): >>43518246 #>>43518259 #>>43518325 #
1. Chris2048 ◴[] No.43518246[source]
Django may be popular, but it isn't necessarily the best.

A lot is built-in, but there is less modularity compared to say flask.

The ORM is generally inferior to SQLAlchemy, and things like Generic FKs are Django-specific (middleware) that gives you a structural dependency on a framework-specific feature, as well as DB logic in the app layer. Also, (might have changed since I last used it), it's not patricularly pythonic.

async frameworks (awsgi) are the new hotness, and FastApi is gaining steady traction.