Adatbázis (m77.db)
Gyűjtemények, lekérdezések és felhasználónkénti adatok.
Az m77.db egy séma nélküli dokumentumadatbázis. A gyűjtemények automatikusan létrejönnek, amikor először írsz beléjük.
Létrehozás
const task = await m77.db.create('tasks', { title: 'Ship v2', done: false, priority: 2 });
// → { id, title, done, priority, createdAt, updatedAt, ownerId }Olvasás
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 } });Szűrők
A where pontos egyezéssel szűr a mezőkre, és operátorokat is támogat:
| Operátor | Példa |
|---|---|
| egyenlő | { status: 'paid' } |
$ne | { status: { $ne: 'draft' } } |
$in | { status: { $in: ['sent', 'paid'] } } |
$gt / $gte / $lt / $lte | { total: { $gte: 100 } } |
$contains | { name: { $contains: 'ann' } } (kis- és nagybetűtől független) |
A sort egy mezőnevet vár, csökkenő sorrendhez - előtaggal (alapértelmezés: -createdAt). A limit legfeljebb 500, az offset lapozásra való.
Frissítés és törlés
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);Felhasználónkénti adatok
A bejelentkezett felhasználó által létrehozott rekordok ownerId-t kapnak. Csak az aktuális felhasználó rekordjait a mine: true beállítással kérdezheted le:
const myNotes = await m77.db.list('notes', { mine: true });A tulajdonossal rendelkező rekordokat csak a tulajdonosuk frissítheti vagy törölheti.
Hozzáférési szabályok
Alapértelmezés szerint minden gyűjtemény nyilvános. Gyűjteményenként korlátozhatod a szerkesztő Adatok fülén, vagy az alkalmazásod szabályokat adhat meg egy m77.config.json fájlban:
{ "rules": { "notes": "private", "menu": "readonly", "orders": "auth" } }| Szabály | Ki olvashat | Ki írhat |
|---|---|---|
public | Bárki | Bárki |
auth | Bejelentkezett alkalmazásfelhasználók | Bejelentkezett alkalmazásfelhasználók |
private | Mindenki csak a saját rekordjait látja | Csak a rekord tulajdonosa |
readonly | Bárki | Csak te, az Adatok fülön |
Korlátok
Rekordonként legfeljebb 1 MB; alkalmazásonként 50 000 rekord (ha többre van szükséged, írj nekünk).