4: De admin en API

Met modellen en een menu gedeclareerd, biedt de CMS een volledige admin en een bijpassende REST API.

4.1: URLs

Pad Toont
/articles de lijst voor een model (de menu uri)
/article/5 één record en zijn relaties
/create/article het aanmaakformulier
/change/article/5 het bewerkingsformulier
/api/... de JSON API voor dezelfde resources

Lijsten en record-URI's komen van de tabelnaam van elk model (of zijn uriList / uriRecord overrides), en de zijbalk uri moet overeenkomen.

4.2: De write API

Elk model is schrijfbaar via POST, PUT, PATCH en DELETE, inclusief geneste kindbewerkingen; lezen zijn de weergegeven lijst- en recordpagina's. Schrijfacties zijn CSRF-beschermd, en de formulieren en de API delen de validatie die door jouw schema is gedefinieerd.

4.3: Uiterlijk en gevoel

Het CMS levert thema's en overgangen als resources. Een app kiest standaardinstellingen met prop theme en prop trans, en gebruikers kunnen tijdens runtime wisselen. Omdat de hele admin gegenereerd is, is het opnieuw stylen een keuze voor het thema, niet een herschrijving van de template.

4.4: Authenticatie is optioneel

Het CMS dwingt geen authenticatie af. Het productie Dashboard voegt auth bovenop (inloggen, rollen, permissies per module); een kleine interne tool, zoals de demo, kan open draaien. Voeg de auth resource toe en beveilig routes wanneer je toegang tot controle nodig hebt.

4.5: Dashboard-widgets

De CMS-home is niet alleen een menu. Elk model kan widgets erop vastpinnen, zodat het dashboard opent als een live overzicht van de gegevens erachter. Een widget is een static objWidgets op het model, gekenmerkt door de titel, met een type en de gegevens die het plot:

static objWidgets => [
	'Articles' => obj (
		type: 'gauge',
		data: static::item(columns: 'COUNT(id)'),
	),
	'Price per plan' => obj (
		type: 'bar',
		data: static::pair(columns: 'name, price', order: 'price ASC'),
	),
]

Widgettypes: bar, gauge, line, list en pie. Lijst de types die je gebruikt in resources (widgets/bar, ...) en voeg chart.js toe voor de grafiektype. Een order: sleutel sorteert widgets over modellen.

We gebruiken essentiële cookies om deze site te laten werken. Met uw toestemming gebruiken we ook analytics om de site te verbeteren.