Přeskočit na obsah

Modely, enumy a vlastnosti

Modely popisují data vašeho API. Model nese typované vlastnosti a tyto vlastnosti mohou odkazovat na jiné modely nebo na enumy.

Sekce Modely: seznam vlastností modelu s jejich typem, příznaky a příkladem

Enum je uzavřená množina hodnot (například stav draft / published / archived). Návrh je spravuje dvěma způsoby:

  • Pojmenované enumy — znovupoužitelné, prvotřídní. V sekci Enumy použijte Přidat enum, dejte mu název a popis a poté Přidat hodnotu pro každý záznam. Vlastnost (nebo parametr trasy) na něj poté odkazuje svým typem.
  • Inline enumy — anonymní množina deklarovaná přímo na jedné vlastnosti. U vlastnosti string / integer / number vám editor žetonů Hodnoty enumu umožní vypsat povolené hodnoty přímo na místě, bez vytváření pojmenovaného typu.

Když si inline enum zaslouží být sdílen, Extrahovat do pojmenovaného enumu jej povýší: vytvoří pojmenovaný enum (znovu použije existující enum se stejnými hodnotami, aby se předešlo duplicitám) a přepíše vlastnost tak, aby na něj odkazovala. Parametry tras rovněž nesou inline enumy a stejnou akci Extrahovat — viz Trasy a CRUD.

V sekci Modely vyberte model: jeho vlastnosti se zobrazí v tabulce (Vlastnost, Typ, Příznaky, Příklad). Použijte Přidat vlastnost k vytvoření nové.

Vlastnost může být typu:

  • primitivum: string, integer, number, boolean;
  • pole (array<…>) nebo mapa (map<…>) jiného typu;
  • reference na jiný model;
  • reference na enum.

Pro typ string můžete upřesnit formát: email, uuid, date, date-time, uri, hostname, ipv4, password nebo byte.

Kromě typu přijímá vlastnost mnoho polí: Popis, Příklad, Výchozí hodnota, Minimum / Maximum, Min. délka / Max. délka, Vzor (regex), Zpráva o zastarání a — pro reference — chování On delete.

Příznaky kvalifikují vlastnost a zobrazují se ve formě odznaků: povinná, nullable, jedinečná, neměnná, searchable (prohledávatelná — viz Trasy a CRUD), zastaralá, pouze pro čtení, pouze pro zápis a PII (osobní údaje).

Každý model má vlastní nastavení:

  • Identita — identifikující vlastnost a její strategie generování (uuid, autoIncrement nebo ulid). Právě tento identifikátor je propojen s parametry {{id}} generovaných tras.
  • Dědičnost — model může dědit od rodiče; potomek zobrazuje vlastnosti rodiče pouze pro čtení, vedle svých vlastních.
  • Úložiště a životní cyklus — očekávaná volumetrie, časová razítka (created / updated) a měkké mazání (soft delete).

Rovněž z tohoto nastavení se spouští Generovat CRUD a Generovat trasy vyhledávání — popsané na následující stránce.