-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Technote: Creación de la Tabla Log
Objetivo:
Crear la tabla Log para almacenar registros de las acciones realizadas por los Managers o Administrators dentro del sistema. Los registros deben incluir el nombre del Manager o Administrador que realizó la acción, la información de las publicaciones de un cliente antes y después de la acción, y la fecha y hora en que se realizó la acción. Además, si un cliente fue creado o eliminado, se debe registrar el nombre de usuario del cliente afectado.
Estructura de la Tabla Log:
La tabla debe tener los siguientes campos:
-
manager_name: (Nombre del Manager o Administrador) – Tipo
Text, campo requerido que almacenará el nombre del Manager o Administrador que realizó la acción. Este campo debe ser obligatorio. -
previous_publications: (Número de publicaciones previas) – Tipo
Integer, campo requerido que almacenará el número de publicaciones que un cliente tenía antes de la acción realizada. -
new_publications: (Nuevo número de publicaciones) – Tipo
Integer, campo requerido que almacenará el nuevo número de publicaciones asignadas al cliente después de la acción. -
action_timestamp: (Fecha y hora de la acción) – Tipo
DateTime, campo requerido que almacenará la fecha y hora exacta en la que se realizó la acción. -
client_username: (Nombre de usuario del cliente) – Tipo
Text, campo requerido que almacenará el nombre de usuario (correo electrónico) del cliente afectado por la acción, en caso de que la acción involucre la creación o eliminación del cliente. -
action_type: (Tipo de acción) – Tipo
Text, campo requerido que especificará el tipo de acción realizada (por ejemplo, "creación de cliente", "eliminación de cliente", "modificación de publicaciones").
Pasos:
-
Crear el modelo
Log:- Crear un archivo de migración para el modelo
Logque defina los campos mencionados. - El campo
manager_namedebe ser de tipoTextpara almacenar el nombre del Manager o Administrador. - Los campos
previous_publicationsynew_publicationsdeben ser de tipoIntegerpara almacenar los números de publicaciones. - El campo
action_timestampdebe ser de tipoDateTimepara registrar la fecha y hora de la acción. - El campo
client_usernamedebe ser de tipoTextpara almacenar el nombre de usuario del cliente afectado. - El campo
action_typedebe ser de tipoTextpara describir el tipo de acción realizada.
- Crear un archivo de migración para el modelo
-
Generación de la Migración:
- Generar la migración para crear la tabla
Log.
- Generar la migración para crear la tabla
-
Aplicar la Migración:
- Ejecutar el comando para aplicar las migraciones y crear la tabla
Logen la base de datos.
- Ejecutar el comando para aplicar las migraciones y crear la tabla
Consideraciones:
- Validación de Datos: Asegúrese de que todos los campos tengan datos válidos y consistentes, especialmente los campos numéricos (publicaciones) y la fecha y hora de la acción.
- Integridad del Registro: Los registros deben ser completos para poder realizar auditorías o análisis posteriores, por lo que la información sobre el Manager, las publicaciones del cliente y el tipo de acción debe ser precisa y almacenada correctamente.
- Acciones de Creación y Eliminación de Clientes: Es importante registrar el nombre de usuario del cliente en el campo
client_usernameen el caso de que la acción sea la creación o eliminación de un cliente.
Entregables:
- Migración para crear la tabla
Logcon los campos mencionados. - Modelo de Django para
Logcon los campos requeridos. - Migración aplicada a la base de datos.