Saltar a contenido

Datos de demostración (semilla)

El comando de administración seed_demo llena la base de datos de un inquilino con datos de demostración realistas del sector construcción — clientes, contactos, Bids y Jobs — y puede reiniciarla a vacío en un solo paso.

Este comando está pensado solo para demostraciones de ventas, recorridos de QA y desarrollo local. No se ejecutará a menos que DEBUG=True o se pase la bandera --force.


Uso

# Sembrar 15 clientes predeterminados en un inquilino
python manage.py seed_demo --slug=acme

# Sembrar un número específico de clientes
python manage.py seed_demo --slug=acme --count=20

# Reiniciar — borrar todos los datos para volver a ejecutar desde cero
python manage.py seed_demo --slug=acme --clear

# Ejecutar en entorno no debug (servidor de demo en staging)
python manage.py seed_demo --slug=acme --force

Argumentos

Argument Default Description
--slug (obligatorio) Slug del inquilino objetivo
--count 15 Número de clientes a crear
--clear desactivado Borrar todos los datos del inquilino y usuarios demo de la plataforma
--force desactivado Omitir la protección de seguridad DEBUG=False

Qué se crea

Usuarios demo (base de datos de plataforma, creados una vez por slug):

  • pm@{slug}.demoProject Manager
  • sup@{slug}.demoSupervisor

Por cliente:

  • 1–3 contactos con puestos relevantes para construcción
  • 3–6 Bids distribuidos en estados: New Bid, Bid Awaiting PO, Bid Approved, Bid Rejected
  • 1 Job (Ready to Start o In Progress) por cada Bid aprobado

Reiniciar una demo

Para borrar todos los datos demo y empezar de nuevo:

python manage.py seed_demo --slug=acme --clear
python manage.py seed_demo --slug=acme

El paso --clear elimina todos los clientes, contactos, Bids, Jobs y los usuarios demo creados para ese inquilino. Una semilla nueva reconstruye todo con datos aleatorios nuevos.


Seguridad

  • El comando lanza error si DEBUG=False y no se pasa --force.
  • Los usuarios demo son identificables por el prefijo auth0_sub demo|--clear solo elimina esos usuarios, no usuarios reales del inquilino.
  • El comando no toca la base de datos de plataforma salvo para leer el inquilino y administrar las dos cuentas demo.