Backend & SDK

Datenbank (m77.db)

Collections, Abfragen und Daten pro Nutzer.

m77.db ist eine schemalose Dokumentdatenbank. Collections werden automatisch angelegt, sobald du zum ersten Mal hineinschreibst.

Anlegen

const task = await m77.db.create('tasks', { title: 'Ship v2', done: false, priority: 2 });
// → { id, title, done, priority, createdAt, updatedAt, ownerId }

Lesen

const all = await m77.db.list('tasks');
const open = await m77.db.list('tasks', { where: { done: false }, sort: '-priority', limit: 50 });
const one = await m77.db.get('tasks', id);            // null if missing
const count = await m77.db.count('tasks', { where: { done: true } });

Filter

where vergleicht Felder exakt und unterstützt Operatoren:

OperatorBeispiel
gleich{ status: 'paid' }
$ne{ status: { $ne: 'draft' } }
$in{ status: { $in: ['sent', 'paid'] } }
$gt / $gte / $lt / $lte{ total: { $gte: 100 } }
$contains{ name: { $contains: 'ann' } } (ohne Groß-/Kleinschreibung)

sort nimmt einen Feldnamen, mit - davor für absteigend (Standard -createdAt). limit geht bis 500, offset blättert.

Aktualisieren & löschen

await m77.db.update('tasks', id, { done: true });   // shallow merge
await m77.db.replace('tasks', id, { title: 'New' }); // overwrite all fields
await m77.db.remove('tasks', id);

Daten pro Nutzer

Datensätze, die angelegt werden, während ein Nutzer angemeldet ist, bekommen eine ownerId. Mit mine: true fragst du nur die Datensätze des aktuellen Nutzers ab:

const myNotes = await m77.db.list('notes', { mine: true });

Datensätze mit Besitzer können nur von diesem Besitzer geändert oder gelöscht werden.

Zugriffsregeln

Jede Collection ist standardmäßig öffentlich. Schränke sie pro Collection im Tab Daten des Builders ein oder lass deine App Regeln in einer Datei m77.config.json festlegen:

{ "rules": { "notes": "private", "menu": "readonly", "orders": "auth" } }
RegelWer lesen darfWer schreiben darf
publicAlleAlle
authAngemeldete App-NutzerAngemeldete App-Nutzer
privateJeder Nutzer sieht nur seine eigenen DatensätzeNur der Besitzer des Datensatzes
readonlyAlleNur du, im Tab Daten

Limits

Datensätze bis je 1 MB; 50.000 Datensätze pro App (für mehr kontaktiere uns).