MongoDB
@rebasepro/server-mongo implementa el BackendBootstrapper de Rebase para
MongoDB. La API REST, el SDK generado, el panel de administración y la superficie
de autenticación funcionan sobre él.
Instalación
Sección titulada «Instalación»pnpm add @rebasepro/server-mongoimport { rebase } from "@rebasepro/server";import { createMongoBootstrapper } from "@rebasepro/server-mongo";
rebase({ backend: createMongoBootstrapper({ url: process.env.DATABASE_URL! })});Establezca DATABASE_URL con una cadena de conexión de MongoDB
(mongodb://… o mongodb+srv://…).
Qué funciona
Sección titulada «Qué funciona»| API de datos | La superficie REST completa: list, get, create, update, delete, filtros, ordenación, paginación |
| SDK generado | El mismo cliente tipado que en Postgres |
| Tiempo real | Change streams. Esto requiere un replica set; un mongod independiente (standalone) no tiene oplog al que hacer seguimiento, por lo que el tiempo real no estará disponible de forma silenciosa allí |
| Historial | Basado en snapshots, con la misma estructura que en Postgres |
| Autenticación | Toda la superficie de autenticación, con sus repositorios almacenados en MongoDB |
| Panel de administración | Colecciones, formularios, relaciones en la UI, campos de almacenamiento |
Qué es diferente
Sección titulada «Qué es diferente»- Sin seguridad a nivel de fila. Consulte la advertencia anterior. Este es el punto importante.
- Sin superficie SQL. El editor SQL de Studio, el editor de políticas RLS y
pnpm rls:checkson características de Postgres y no están disponibles. - Sin integridad relacional. Una relación es una referencia almacenada que la aplicación resuelve; no hay claves foráneas, por lo que nada a nivel de base de datos impide que quede una referencia huérfana.
- Sin
rebase db push/generate/migrate. MongoDB no tiene un esquema que migrar. Las colecciones se crean a medida que se escriben los documentos.
Cómo elegir entre ambos
Sección titulada «Cómo elegir entre ambos»Elija MongoDB cuando los datos tengan verdaderamente forma de documento y el modelo de autorización resida en su aplicación de todos modos. Elija PostgreSQL cuando desee que sea la propia base de datos la que determine quién ve cada fila, que es el argumento que Rebase defiende en todo el resto de este sitio.