Taustasüsteem ja SDK

Andmebaas (m77.db)

Kogumikud, päringud ja kasutajapõhised andmed.

m77.db on skeemita dokumendiandmebaas. Kogumikud luuakse automaatselt, kui neisse esimest korda kirjutad.

Loomine

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

Lugemine

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 } });

Filtrid

where võrdleb välju täpselt ja toetab operaatoreid:

OperaatorNäide
võrdub{ status: 'paid' }
$ne{ status: { $ne: 'draft' } }
$in{ status: { $in: ['sent', 'paid'] } }
$gt / $gte / $lt / $lte{ total: { $gte: 100 } }
$contains{ name: { $contains: 'ann' } } (tõstutundetu)

sort võtab välja nime, kahaneva järjestuse jaoks eesliitega - (vaikimisi -createdAt). limit on kuni 500, offset jaotab lehtedeks.

Uuendamine ja kustutamine

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);

Kasutajapõhised andmed

Kirjed, mis luuakse siis, kui kasutaja on sisse logitud, saavad välja ownerId. Päri ainult praeguse kasutaja kirjeid valikuga mine: true:

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

Omanikuga kirjeid saab uuendada või kustutada ainult nende omanik.

Juurdepääsureeglid

Iga kogumik on vaikimisi avalik. Lukusta see kogumiku kaupa redaktori vahekaardil Andmed või lase rakendusel reeglid failis m77.config.json määrata:

{ "rules": { "notes": "private", "menu": "readonly", "orders": "auth" } }
ReegelKes saab lugedaKes saab kirjutada
publicIgaüksIgaüks
authSisselogitud rakenduse kasutajadSisselogitud rakenduse kasutajad
privateIga kasutaja näeb ainult oma kirjeidAinult kirje omanik
readonlyIgaüksAinult sina, vahekaardilt Andmed

Piirangud

Kirjed kuni 1 MB; 50 000 kirjet rakenduse kohta (rohkema jaoks võta meiega ühendust).