Prisma Zod -muunnin
Muunna Prisma-skeeman mallit Zod-validointiskeemoiksi TypeScript-tyyppien päätelmän avulla
Syöte
Tuloste
Lue lisää
Mikä on Prisma ja Zod?
Prisma on ORM‑työkalu (Object-Relational Mapping), joka käyttää skeematiedostoa tietokantarakenteen määrittämiseen malleilla, kentillä ja suhteilla. Zod on TypeScript‑ensimmäinen skeeman validointikirjasto, jonka avulla voit määritellä ajonaikaisia tyyppivalidaattoreita. Prisma‑skeemojen muuntaminen Zod‑skeemoiksi mahdollistaa tietokantamallien uudelleenkäytön syötteen validoinnissa, mikä varmistaa johdonmukaisuuden tietokantarakenteen ja validointilogiikan välillä koko sovelluksessasi.
Työkalun kuvaus
Tämä työkalu muuntaa automaattisesti Prisma‑skeeman määritelmät Zod‑validointiskeemoiksi. Se jäsentää Prisma‑mallisi, enumit ja kenttätyypit ja luo niistä vastaavat Zod‑skeemat oikeilla tyyppikäännöksillä. Työkalu käsittelee valinnaisia kenttiä, taulukoita ja erityisiä Prisma‑tyyppejä, luoden TypeScript‑valmiita validointiskeemoja, jotka heijastavat tietokantarakennettasi.
Ominaisuudet
- Automaattinen tyyppikartoitus: Muuntaa Prisma‑tyypit (String, Int, DateTime, jne.) vastaaviksi Zod‑validoinneiksi
- Enum‑tuki: Luo Zod‑enum‑skeemat Prisma‑enum‑määrittelyistä
- Taulukko‑käsittely: Muuntaa Prisma‑listakentät oikein Zod‑taulukko‑validoinneiksi
- Valinnaiset kentät: Säilyttää valinnaisten kenttien määrittelyn luoduissa Zod‑skeemoissa
- TypeScript‑tyypit: Generoi automaattisesti TypeScript‑tyyppimäärittelyt käyttäen
z.infer‑funktiota - Suhteiden kommentit: Lisää kommentteja suhdekentille, joita ei voida muuntaa suoraan
- Useita malleja: Käsittelee kaikki mallit ja enumit yhdessä Prisma‑skeematiedostossa
- Syntaksin korostus: Koodieditori Prisma‑ ja TypeScript‑syntaksin korostuksella
Käyttötapaukset
- API‑syötteen validointi: Vahvista pyyntöjen rungot tietokantamalliesi perusteella
- Lomakevalidointi: Käytä Zod‑skeemoja lomakekirjastoissa, kuten React Hook Form
- Tyyppiturvallisuus: Varmista, että ajonaikainen validointi vastaa tietokantaskeemaa
- Koodin generointi: Luo automaattisesti validointilogiikka tietokantamalleistasi
- Johdonmukaisuus: Pidä validointiskeemat synkronoituna tietokantarakenteen kanssa
- GraphQL‑resoluutiot: Validoi syötteet GraphQL‑mutaatioiden resoluutioissa
- Migraatiotuki: Päivitä validointiskeemat, kun tietokantamallit muuttuvat
Tuetut tyyppikäännökset
String→z.string()Int,Float,Decimal→z.number()Boolean→z.boolean()DateTime→z.date()Json→z.record(z.any())Bytes→z.instanceof(Buffer)BigInt→z.bigint()- Mukautetut tyypit/enumit →
z.lazy(() => TypeSchema) - Listat →
z.array() - Valinnaiset kentät →
.optional()