Skip to content

Log Table #47

@lmdelbahia

Description

@lmdelbahia

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:

  1. 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.
  2. Generación de la Migración:

    • Generar la migración para crear la tabla Log.
  3. 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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions