El uso de un ORM no requiere que abandones SQL por completo.
En cualquier interfaz ORM, hay formas de escribir una consulta SQL directamente.
Aquí hay documentación sobre cómo hacerlo en Django: Realización de consultas SQL sin formato. ¡Esto está en la documentación oficial de Django! Es totalmente legítimo y soportado hacer esto.
- ¿Por qué a tantos desarrolladores no les gusta el desarrollo web y lo tratan como un ciudadano de programación de segunda clase?
- ¿Qué son las declaraciones 'if' en XML? ¿Cómo se usan?
- Al construir un sitio, ¿debería uno centrarse en el front-end primero o en el back-end?
- ¿Codeigniter es adecuado para grandes aplicaciones web?
- ¿Qué significa formatear una cadena en PHP?
Dice en parte:
Cuando las API de consulta de modelo no llegan lo suficientemente lejos, puede recurrir a escribir SQL sin formato. Django le ofrece dos formas de realizar consultas SQL sin formato: puede usar Manager.raw () para realizar consultas sin formato y devolver instancias de modelos, o puede evitar la capa del modelo por completo y ejecutar SQL personalizado directamente.
Esa página continúa y muestra ejemplos.
Los ORM son para hacerlo más productivo en la codificación de consultas simples y repetitivas. Pero SQL es poderoso, y las consultas pueden ser más sofisticadas que la simple API modelo ORM.
Cuando tenga una consulta SQL más compleja que no sea conveniente o directa en la API del modelo ORM, continúe y use SQL.