Skip to content

Primeros pasos

Este ejemplo usa PostgreSQL, pero la API se mantiene igual entre adaptadores.

import { defineModel, t } from 'jsorm';
const Role = defineModel('roles', {
id: t.number().primary(),
name: t.string().unique(),
});
const User = defineModel('users', {
id: t.number().primary(),
name: t.string(),
email: t.string().optional(),
active: t.boolean().default(true),
role: t.belongsTo(Role),
});
import { connectionDB } from 'jsorm';
import { pgAdapter } from 'jsorm-pg';
const db = connectionDB({
adapter: pgAdapter({
name: 'main',
connectionString: process.env.DATABASE_URL!,
}),
});
await db.insert(User, {
name: 'Alice',
email: 'alice@example.com',
role: { connect: 1 },
});
const users = await db.get(User, {
select: {
id: true,
name: true,
role: { name: true },
},
where: {
active: true,
},
});
  1. Empieza con un adaptador y un área pequeña del producto.
  2. Mantén la orquestación de conexiones en un módulo dedicado.
  3. Usa primero la API JSON de relaciones y solo baja a SQL raw cuando sea necesario.