Modeli, enumi i svojstva
Modeli opisuju podatke vašeg API-ja. Model nosi tipizirana svojstva, a ta svojstva mogu upućivati na druge modele ili na enume.

Enum je zatvoreni skup vrednosti (na primer status
draft / published / archived). Dizajn njima upravlja na dva načina:
- Imenovani enumi — ponovo upotrebljivi, prvorazredni. U sekciji Enumi upotrebite Dodaj enum, dajte mu naziv i opis, zatim Dodaj vrednost za svaki unos. Svojstvo (ili parametar rute) ga zatim referencira svojim tipom.
- Ugrađeni enumi (inline) — anoniman skup deklarisan direktno na svojstvu. Na
svojstvu
string/integer/numberuređivač bedževa Vrednosti enuma omogućava vam da popišete dozvoljene vrednosti na licu mesta, bez kreiranja imenovanog tipa.
Kada ugrađeni enum zaslužuje da bude deljen, Izdvoji u imenovani enum ga promoviše: kreira imenovani enum (ponovo koristeći postojeći enum sa istim vrednostima, radi izbegavanja duplikata) i prepisuje svojstvo tako da ga referencira. Parametri rute takođe nose ugrađene enume i istu radnju Izdvoji — vidi Rute i CRUD.
Svojstva modela
Section titled “Svojstva modela”U sekciji Modeli izaberite model: njegova svojstva se prikazuju u tabeli (Svojstvo, Tip, Zastavice, Primer). Upotrebite Dodaj svojstvo za kreiranje novog.
Svojstvo može biti tipa:
- primitiv:
string,integer,number,boolean; - niz (
array<…>) ili mapa (map<…>) drugog tipa; - referenca na drugi model;
- referenca na enum.
Za tip string možete odrediti format: email, uuid, date,
date-time, uri, hostname, ipv4, password ili byte.
Osim tipa, svojstvo prihvata mnoga polja: Opis, Primer, Podrazumevana vrednost, Minimum / Maksimum, Min. dužina / Maks. dužina, Šablon (regex), Poruka o zastarelosti i — za reference — ponašanje On delete.
Zastavice
Section titled “Zastavice”Zastavice kvalifikuju svojstvo i prikazuju se u obliku bedževa: obavezno, nullable, jedinstveno, nepromenljivo, searchable (pretraživo — vidi Rute i CRUD), zastarelo, samo za čitanje, samo za pisanje i PII (lični podatak).
Identitet i nasleđivanje
Section titled “Identitet i nasleđivanje”Svaki model ima sopstvena podešavanja:
- Identitet — identifikaciono svojstvo i njegova strategija generisanja
(
uuid,autoIncrementiliulid). Upravo je taj identifikator povezan sa parametrima{{id}}generisanih ruta. - Nasleđivanje — model može naslediti roditelja; dete prikazuje svojstva roditelja samo za čitanje, pored sopstvenih.
- Skladištenje i životni ciklus — očekivana volumetrija, vremenske
oznake (
created/updated) i meko brisanje (soft delete).
Takođe se iz tih podešavanja pokreće Generiši CRUD i Generiši rute pretrage — opisani na sledećoj stranici.