Instalación
Find the anon key with npx @insforge/cli secrets get ANON_KEY, or in the dashboard: click Install and open API Keys.
insert()
Inserta nuevos registros en una tabla.
Parámetros
values (object | Array, required) - Datos a insertar. Un único objeto o matriz para inserción masiva
options.count (‘exact’ | ‘planned’ | ‘estimated’, optional) - Incluye conteo de filas insertadas
Devoluciones
Encadena .select() después de .insert() para devolver los datos insertados
Ejemplos
Salida de Ejemplo
update()
Actualiza registros existentes en una tabla. Debe usar filtros para apuntar a filas específicas.
Parámetros
values (object, required) - Campos a actualizar
options.count (‘exact’ | ‘planned’ | ‘estimated’, optional) - Incluye conteo de filas actualizadas
Devoluciones
Siempre usa filtros como .eq() o .in() para especificar qué filas actualizar
Ejemplos
Salida de Ejemplo
delete()
Elimina registros de una tabla. Debe usar filtros para apuntar a filas específicas.
Parámetros
options.count (‘exact’ | ‘planned’ | ‘estimated’, optional) - Incluye conteo de filas eliminadas
Devoluciones
Siempre usa filtros para especificar qué filas eliminar
Ejemplos
Salida de Ejemplo
select()
Consulta registros de una tabla o vista.
Parámetros
columns (string, optional) - Nombres de columnas separados por comas. Usa * para todas las columnas
options.count (‘exact’ | ‘planned’ | ‘estimated’, optional) - Incluye conteo de fila total
options.head (boolean, optional) - Devuelve solo el conteo, sin datos
Devoluciones
Ejemplos
Salida de Ejemplo
rpc()
Llama a funciones almacenadas de PostgreSQL (RPC - Llamada de Procedimiento Remoto).
Parámetros
functionName (string, required) - Nombre de la función PostgreSQL a llamar
args (object, optional) - Argumentos a pasar a la función
Devoluciones
Ejemplos
Filtros
Encadena filtros para reducir los resultados de la consulta. Todos los filtros toman (column, value) como parámetros.
| Filtro | Descripción | Ejemplo |
|---|
.eq(column, value) | Igual a | .eq('status', 'active') |
.neq(column, value) | No igual a | .neq('status', 'banned') |
.gt(column, value) | Mayor que | .gt('age', 18) |
.gte(column, value) | Mayor o igual que | .gte('price', 100) |
.lt(column, value) | Menor que | .lt('stock', 10) |
.lte(column, value) | Menor o igual que | .lte('priority', 3) |
.like(column, pattern) | Patrón que distingue mayúsculas de minúsculas (usa % comodín) | .like('name', '%Widget%') |
.ilike(column, pattern) | Patrón que no distingue mayúsculas de minúsculas (usa % comodín) | .ilike('email', '%@gmail.com') |
.in(column, array) | Valor en matriz | .in('status', ['pending', 'active']) |
.is(column, value) | Exactamente igual (para comprobaciones nulas) | .is('deleted_at', null) |
Modificadores
Controla cómo se devuelven los resultados de la consulta.
| Modificador | Descripción | Ejemplo |
|---|
.order(column, options) | Ordena los resultados. Opciones: { ascending: true/false, nullsFirst: true/false } | .order('created_at', { ascending: false }) |
.limit(count) | Limita el número de filas | .limit(10) |
.range(from, to) | Obtén filas entre índices (paginación) | .range(0, 9) |
.single() | Devuelve objeto en lugar de matriz (lanza si hay múltiples) | .single() |
.maybeSingle() | Devuelve objeto o null (sin error) | .maybeSingle() |
Patrones Comunes
Paginación con Conteo
Salida:
Búsqueda Filtrada
Salida:
Usar con Ganchos de Autenticación
Combina consultas de base de datos con ganchos useUser() o useAuth() para obtener datos específicos del usuario:
Puntos clave:
- Usa
user.id para filtrar datos del usuario autenticado
- Comprueba
isLoaded antes de acceder a user para evitar condiciones de carrera
- Comprueba
!user para manejar el estado no autenticado