5 ms·
Nah, Django makes you sad: async support is not full, migrations engine is pretty poor, not all database features are present, any kind of typing is hacky, very
by ac130kz 5y ago
Nah, Django makes you sad: async support is not full, migrations engine is pretty poor, not all database features are present, any kind of typing is hacky, very slow and so on
- geewee 5y agoWhat other migration engine have you used that's better? Anything non-django I've used makes me wish I was using Django
- fb03 5y ago"alembic" is better by leaps and bounds. it is used within a SQLAlchemy system, which is also a superior ORM than Django's.
- louissan 5y agoquestion of taste...
- robertlagrant 5y agoLess taste and more that data mapper ORMs are better (although harder to make) than active record ones, except for very small datasets/simple queries.
- andybak 5y ago"Better" for whom? It was a long time ago that I surveyed the ORM landscape but I remember thinking at the time I was much happier using an active record style ORM. I guess I'm saying I'm always suspicious when I see "better" with no qualification. Everything has tradeoffs.
- handrous 5y agoI, for one, find data mapper simply baffling. I look at it and can't even comprehend why someone might want to do things that way. Granted, I'm not fond of ORMs in general, but I at least understand the appeal of the active record pattern.
- robertlagrant 5y agoPresumably to mitigate the large downsides of Active Record.
- qeternity 5y ago> migrations engine is pretty poor I find this to be an odd take. The Django migrations engine is probably its strongest feature.
- wiredfool 5y agoThere is at least one way that migrating a + b is different than migrate a + migrate b, in ways that you can then only incrementally migrate your project rather than building from scratch. It’s mainly in post migrate actions, and specifically for me adding a group for permissions.
- WD-42 5y agoIf you write manual migrations, then it's often worth it to write the reverse function (in your case, deleting that group) so that you avoid this situation.
- wiredfool 5y agoIt’s not the back and forth, it’s that a migration in b that requires the post migrate step from a will fail if both migrations are run in one shot, (say, because you’re bootstrapping a new dev or test db) but it will work when done incrementally (such as during development or deployment).
- ac130kz 5y agoAny change you make has to be atomic, or it is unable to detect the change, and you have to rely on manual migrations.