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
Log que defina los campos mencionados.
- El campo
manager_name debe ser de tipo Text para almacenar el nombre del Manager o Administrador.
- Los campos
previous_publications y new_publications deben ser de tipo Integer para almacenar los números de publicaciones.
- El campo
action_timestamp debe ser de tipo DateTime para registrar la fecha y hora de la acción.
- El campo
client_username debe ser de tipo Text para almacenar el nombre de usuario del cliente afectado.
- El campo
action_type debe ser de tipo Text para describir el tipo de acción realizada.
-
Generación de la Migración:
- Generar la migración para crear la tabla
Log.
-
Aplicar la Migración:
- Ejecutar el comando para aplicar las migraciones y crear la tabla
Log en la base de datos.
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_username en el caso de que la acción sea la creación o eliminación de un cliente.
Entregables:
- Migración para crear la tabla
Log con los campos mencionados.
- Modelo de Django para
Log con los campos requeridos.
- Migración aplicada a la base de datos.
Technote: Creación de la Tabla
LogObjetivo:
Crear la tabla
Logpara 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:Logque defina los campos mencionados.manager_namedebe ser de tipoTextpara almacenar el nombre del Manager o Administrador.previous_publicationsynew_publicationsdeben ser de tipoIntegerpara almacenar los números de publicaciones.action_timestampdebe ser de tipoDateTimepara registrar la fecha y hora de la acción.client_usernamedebe ser de tipoTextpara almacenar el nombre de usuario del cliente afectado.action_typedebe ser de tipoTextpara describir el tipo de acción realizada.Generación de la Migración:
Log.Aplicar la Migración:
Logen la base de datos.Consideraciones:
client_usernameen el caso de que la acción sea la creación o eliminación de un cliente.Entregables:
Logcon los campos mencionados.Logcon los campos requeridos.