Editor de Modelos » Descripción del editor de modelos

Editor de modelos

El editor permite visualizar y editar modelos de manera intuitiva. Los modelos están compuestos de entidades, enums y relaciones.

Decidimos llamarlo modelo para mantenerlo más general ya que podría usarse para cualquier tipo de proyecto, no necesariamente una base de datos relacional.

Editor de Modelos

Entidades

Las entidades están compuestas de campos, cada campo tiene un tipo y podría tener validaciones específicas del tipo. Consulta el documento de gestión de entidades para obtener más detalles sobre campos y entidades en general.

El editor soporta dos tipos de entidades:

  • Autónoma
  • Dependiente

Las entidades autónomas como su nombre lo sugiere existen por sí mismas y usualmente están representadas por una tabla (cuando se trata de bases de datos relacionales), por otro lado las entidades dependientes solo existen como parte de una entidad autónoma y están representadas como un objeto JSON o array (basado en la cardinalidad).

Decidimos tratar los campos JSON anidados como ciudadanos de primera clase para mejorar la legibilidad, permitir a los desarrolladores definir la estructura de estas entidades dependientes, esto también permite mejores validaciones al gestionar los datos.

Enums

Los enums son diccionarios estáticos que pueden reutilizarse en diferentes campos en diferentes entidades a través del proyecto.

El valor del enum se almacenará como un entero, y la definición se usará para mostrar el valor de cadena al usuario al leer y gestionar los datos.

Relaciones

Las relaciones comunican a los usuarios que dos entidades están relacionadas entre sí.

Hay tres cardinalidades:

  • Uno a uno
  • Uno a muchos
  • Muchos a muchos

Las relaciones de uno a uno y uno a muchos pueden ser relaciones débiles o fuertes, en bases de datos relacionales una relación fuerte entre dos entidades autónomas se aplicará a nivel de base de datos con una clave foránea. Al tratar con entidades dependientes se usarán relaciones débiles ya que no pueden aplicarse a nivel de base de datos.

Lee más sobre relaciones en este documento.

Próximos pasos