Aller au contenu

Modelet, enum-et dhe vetitë

Modelet përshkruajnë të dhënat e API-t tuaj. Një model mbart veti të tipizuara, dhe këto veti mund të referojnë modele të tjera ose enum-e.

Seksioni Modelet: lista e vetive të një modeli me tipin, flamurët dhe një shembull të tyre

Një enum është një grup vlerash i mbyllur (për shembull një status draft / published / archived). Një dizajn i menaxhon në dy mënyra:

  • Enum-e të emërtuara — të ripërdorshme, të nivelit të parë. Nga seksioni Enum-et, përdorni Shto një enum, jepini një emër dhe një përshkrim, pastaj Shto një vlerë për çdo hyrje. Një veti (ose një parametër rruge) e referon më pas sipas tipit të saj.
  • Enum-e inline — një grup anonim i deklaruar drejtpërdrejt mbi një veti. Mbi një veti string / integer / number, një redaktues distinktivësh Vlerat e enum-it ju lejon të listoni vlerat e lejuara aty për aty, pa krijuar një tip të emërtuar.

Kur një enum inline meriton të ndahet, Nxirr në një enum të emërtuar e promovon: krijon enum-in e emërtuar (duke ripërdorur një enum ekzistues me të njëjtat vlera, për të shmangur dublikatat) dhe rishkruan vetinë që ta referojë. Parametrat e rrugës mbajnë gjithashtu enum-e inline dhe të njëjtin veprim Nxirr — shihni Rrugët & CRUD.

Në seksionin Modelet, zgjidhni një model: vetitë e tij shfaqen në një tabelë (Vetia, Tipi, Flamurët, Shembull). Përdorni Shto një veti për të krijuar një.

Një veti mund të jetë e tipit:

  • një primitiv: string, integer, number, boolean;
  • një varg (array<…>) ose një map (map<…>) e një tipi tjetër;
  • një referencë drejt një modeli tjetër;
  • një referencë drejt një enum-i.

Për një string, mund të specifikoni një format: email, uuid, date, date-time, uri, hostname, ipv4, password ose byte.

Përtej tipit, një veti pranon shumë fusha: Përshkrimi, Shembulli, Vlera e paracaktuar, Minimum / Maksimum, Gjatësia min / Gjatësia maks, Modeli (regex), Mesazhi i heqjes nga përdorimi, dhe — për referencat — një sjellje On delete.

Flamurët cilësojnë vetinë dhe shfaqen si distinktivë: i kërkuar, nullable, unik, i pandryshueshëm, searchable (i kërkueshëm — shihni Rrugët & CRUD), i hequr nga përdorimi, vetëm-lexim, vetëm-shkrim, dhe PII (të dhëna personale).

Çdo model ka cilësimet e veta:

  • Identiteti — vetia identifikuese dhe strategjia e gjenerimit të saj (uuid, autoIncrement ose ulid). Është ky identifikues që lidhet me parametrat {{id}} të rrugëve të gjeneruara.
  • Trashëgimia — një model mund të trashëgojë nga një prind; fëmija shfaq vetitë e prindit vetëm-lexim, përveç të vetave.
  • Ruajtja & cikli i jetës — volumetria e pritur, vulat kohore (created / updated) dhe fshirja e butë (soft delete).

Është gjithashtu nga këto cilësime që nisen Gjenero CRUD dhe Gjenero rrugët e kërkimit — të përshkruara në faqen tjetër.