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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions