ORMs are something that seem cool until you have to do anything with them, and then they just get in the way. Their promises (backend-agnostic, write type-safe native code, less boilerplate) sometimes have a catch and sometimes are just false. The reason for this is that ORMs are backwards: they force you to design schemas in your implementation language (python, javascript, java) and then export