Modelos de la Aplicación
Este módulo define la estructura de la base de datos para la aplicación corelab.
- class corelab.models.Ensayo(*args, **kwargs)[fuente]
Representa un tipo de ensayo mecánico (ej. Tensión, Compresión).
Este modelo es actualmente un placeholder y podría expandirse en el futuro para almacenar parámetros específicos de cada tipo de ensayo.
- tipo
El nombre del ensayo.
- Type:
CharField
- descripcion
Una descripción opcional más detallada.
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class corelab.models.Material(*args, **kwargs)[fuente]
Representa un material único y sus propiedades intrínsecas en la base de datos.
Este modelo es la entidad central del proyecto. Almacena la información identificativa clave de cada material que puede ser seleccionado y utilizado en las simulaciones de ensayos mecánicos.
Cada instancia de este modelo corresponde a una entrada única en el catálogo de materiales del simulador.
- class Categoria(*values)[fuente]
Define las categorías de materiales permitidas como una enumeración fija.
El uso de models.TextChoices es una buena práctica de Django que garantiza la integridad de los datos, ya que el campo “categoria” solo puede aceptar uno de estos valores.
Cada miembro de la enumeración es una tupla: (valor_almacenado_en_db, etiqueta_legible_para_humanos)
- exception DoesNotExist
- exception MultipleObjectsReturned
- property nombre_display
Propiedad calculada que devuelve el nombre del material en un formato limpio y legible para ser mostrado en la interfaz de usuario (UI).
Este método no se almacena en la base de datos, sino que se calcula en tiempo real cada vez que se accede a él.
Ejemplo
Si self.nombre es «AISI_1020_Steel», self.nombre_display devolverá «AISI 1020 Steel».
- Devuelve:
El nombre del material con los guiones bajos reemplazados por espacios.
- Tipo del valor devuelto:
str
- class corelab.models.Simulacion(*args, **kwargs)[fuente]
Registra la ejecución de un ensayo específico sobre un material.
Este modelo actúa como un registro histórico, vinculando un Material y un Ensayo y almacenando los resultados generados.
- material
Una relación con el material que fue ensayado.
- Type:
ForeignKey
- ensayo
Una relación con el tipo de ensayo que se realizó.
- Type:
ForeignKey
- resultados
Un campo para almacenar los datos crudos de la simulación en formato JSON.
- Type:
JSONField
- fecha_creacion
La fecha y hora en que se creó el registro.
- Type:
DateTimeField
- exception DoesNotExist
- exception MultipleObjectsReturned