Backend och SDK

Databas (m77.db)

Samlingar, frågor och data per användare.

m77.db är en schemalös dokumentdatabas. Samlingar skapas automatiskt första gången du skriver till dem.

Skapa

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

Läsa

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 matchar fält exakt och stöder operatorer:

OperatorExempel
lika med{ status: 'paid' }
$ne{ status: { $ne: 'draft' } }
$in{ status: { $in: ['sent', 'paid'] } }
$gt / $gte / $lt / $lte{ total: { $gte: 100 } }
$contains{ name: { $contains: 'ann' } } (skiftlägesokänslig)

sort tar ett fältnamn, med - framför för fallande ordning (standard -createdAt). limit går upp till 500, offset paginerar.

Uppdatera och ta bort

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

Data per användare

Poster som skapas medan en användare är inloggad får ett ownerId. Hämta bara den aktuella användarens poster med mine: true:

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

Poster med en ägare kan bara uppdateras eller tas bort av den ägaren.

Åtkomstregler

Varje samling är offentlig som standard. Lås den per samling under fliken Data i byggverktyget, eller låt din app ange regler i en m77.config.json-fil:

{ "rules": { "notes": "private", "menu": "readonly", "orders": "auth" } }
RegelVem kan läsaVem kan skriva
publicAllaAlla
authInloggade appanvändareInloggade appanvändare
privateVarje användare ser bara sina egna posterBara postens ägare
readonlyAllaBara du, från fliken Data

Gränser

Poster på upp till 1 MB vardera; 50 000 poster per app (kontakta oss om du behöver fler).