Crea una cuenta o inicia sesión

¡Continúa aprendiendo sin ningún costo! Únete y comienza a potenciar tu carrera

Curso Básico de Django

Curso Básico de Django

Facundo García Martoni

Facundo García Martoni

¿Qué es ORM? ¿Qué es un modelo?

9/29
Recursos

Aportes 22

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Un ORM (Object-Relational Mapping) es una técnica que nos permite crear una Base de Datos Orientada a Objectos (virtual), que opera sobre la Base de Datos Relacional (real).

Utilizando un ORM podemos operar sobre la base de datos aprovechando las características propias de la orientación a objetos, como herencia y polimorfismo.

También podemos acceder a los atributos de una Entidad de la misma forma que accedemos a los atributos de una Clase, realizar operaciones para obtener, crear, modificar y eliminar datos, todo desde el código de programación sin tener que escribir SQL. Esto además nos permite escribir el código una sola vez y garantizarnos que va a seguir funcionando incluso si en el futuro se cambia el motor de Base de Datos (por ejemplo, de MySQL a Microsoft SQL Server).

👇 👇

Este es mi aporte

El ORM es la traducción del lenguaje SQL a una sintaxis de Python basado en clases y sus atributos.

ORM
Tablas -> Modelos expresados mediante clases1
Columnas -> Atributos1 de las clases1
Tipos de datos -> Clases ligasdas a los Atributos1

Funciones extras del ORM de Django

Así si entiendo muchachos.

Ventajas del uso de un ORM:
*Facilidad y velocidad de uso
*Abstracción de la base de datos
*Seguridad de la capa de acceso a datos contra ataques.
*Reutilización. Nos permite utilizar los métodos de un objeto de datos desde distintas zonas de la aplicación, incluso desde aplicaciones distintas.
*Mantenimiento del código.
Desventajas:
*Lentitud en volúmenes de datos
*Aprender el nuevo lenguaje del ORM.

Exelente explicacion sobre ORM, me habia costado mucho aprender el termino. Ahora todo me quedo claro!!

Explicación de ORM

Imperdible esta explicación de ORM. Excelente.

ORM - Object Relational Mapping

Es la forma de replicar la estructura de una base de datos relacional con programación orientada a objetos.

Utilizando un ORM podemos operar sobre la base de datos aprovechando las características propias de la orientación a objetos, como herencia y polimorfismo.

Las bases de datos se conforman por tablas y cada tablas obtiene los datos relacionados a cada entidad, es posible convertir estas bases de datos en un archivo python que contiene la representación en programación orientada a objetos.

Las tablas corresponden a modelos (los cuales se expresan como clases), las columans van a corresponder a atributos de esas clases y los tipos de datos de cada columna correponderán a clases ligadas a los atributos de los objetos.

<h5>Ventajas</h5>
  • Facilidad y velocidad de uso
  • Abstracción de la base de datos
  • Seguridad de la capa de acceso a datos contra ataques.
  • Reutilización. Nos permite utilizar los métodos de un objeto de datos desde distintas zonas de la aplicación, incluso desde aplicaciones distintas.
  • Mantenimiento del código.

GitHub

Excelente explicación, mejor imposible de verdad, lo que entiendan los conceptos de base de datos y POO (Programación orientada a objetos) lo vana a entender mucho mas rápido y mejor.

Ahora me ha dejado más claro el ORM

Modelos: Representación por medio de las tablas de una base de datos por medio de clases en django. Las columnas son los atributos de estos modelos y con clases definimos el tipo de cada atributo definido en el modelo.

Estos atributos y modelos se verán reflejados en la base de datos después que apliquemos los comandos:

python3 manage.py makemigrations
python3 mange.py migrate

¿Que es un ORM?
(Object Relational Mapping)

.
Técnica que nos permite a través de ciertas librerías y frameworks relacionar la estructura de una Base de Datos Relacional (RDB) Relational Data Base, con la Programación Orientada a Objetos (Poo), es decir, manipular una base de datos a través objetos ubicados en un archivo “.py”, ya que en este archivo hay una representación las tablas de la base de datos.

Models

¿Qué es ORM? ¿Qué es un modelo?

ORM -> Object Relational Mapping

Se trata de relacionar una RBD (Base de datos relacional) con la POO.

Cada archivo de Python será un ‘modelo’ (que representa una tabla de las BBDD) y se crea con clases.

Cada atributo de la clase, es la representación de las columnas.

Y los tipos de datos de las columnas, serán las clases dentro de los atributos.

No había encontrado una mejor explicación que esta, Facundo es un crack!

esta clase mas un poquito de búsqueda en Google es un aporte enorme para entender bien que es un ORM y como trabaja de forma general y/o conceptual.

Muy buena la explicación, la vdd más que claro me quedo.

  • Un ORM son técnicas que utilizan ciertas librerías y frameworks para llevar la estructura de una base relacional a archivos de la programación orientada a objetos.
  • Las tablas se van a corresponder a modelos y estos se van a expresar mediante clases.
  • Las columnas se van a corresponder a atributos de esas clases
  • Los tipos de datos de esas columnas se va a corresponder a clases ligadas a los atributos de las clases que correspondan a los modelos.

En está página web encontrarás otra definición de los modelos en Django por si quieres reforzar lo aprendido aquí:
https://www.w3schools.com/django/django_models.php

excelente explicacion de ORM! muchas gracias