CodeIA Logo
Inicio
¿Qué es la Ingeniería de Contexto?ExperienciaProyectos realizados
Comunidad
FeedMiembrosCuadro de HonorCalendarioBolsa de trabajoEncuestasProyectos de la Comunidad
NoticiasPrecios
Formación
CursosLecciones
Co-Projects
Propuestas de proyectosEnviar propuesta de proyecto
RoadmapGlosarioContacto
Iniciar Sesión
CodeIA Logo

Transformando ideas en software profesional con IA. La nueva era del desarrollo ágil.

Legal

Política de PrivacidadTérminos de ServicioTérminos de SuscripciónAviso LegalCookies

Sígueme

Contactar

© 2026 CodeIA. Todos los derechos reservados.

Hecho con♥por sn4p.dev

Glosario/Seed

Seed

Paulo10 de diciembre de 2025

Definición

Datos o scripts iniciales que se usan para poblar una base de datos o generar resultados reproducibles

Descripción

El seeding es el proceso de poblar una base de datos con datos iniciales o de prueba. Es esencial para: - Desarrollo: Tener datos de ejemplo para trabajar - Testing: Crear escenarios reproducibles - Producción: Insertar datos iniciales (roles, configuraciones, catálogos) - Demos: Mostrar la aplicación con datos realistas Los seeds deben ser idempotentes (ejecutables múltiples veces sin duplicar datos) y deterministas (producir los mismos resultados).

Ejemplo

// prisma/seed.ts import { PrismaClient } from '@prisma/client'; import { faker } from '@faker-js/faker'; const prisma = new PrismaClient(); async function main() { // Seed de datos base (idempotente con upsert) const adminRole = await prisma.role.upsert({ where: { name: 'ADMIN' }, update: {}, create: { name: 'ADMIN', permissions: ['*'] } }); // Seed de usuario admin await prisma.user.upsert({ where: { email: 'admin@example.com' }, update: {}, create: { email: 'admin@example.com', name: 'Admin', password: await hash('admin123'), roleId: adminRole.id } }); // Seed de datos de prueba con Faker const users = Array.from({ length: 10 }, () => ({ email: faker.internet.email(), name: faker.person.fullName(), avatar: faker.image.avatar() })); await prisma.user.createMany({ data: users, skipDuplicates: true }); console.log('✅ Seed completado'); } main() .catch(console.error) .finally(() => prisma.$disconnect()); // Ejecutar: npx prisma db seed

← Volver al glosario