Preskočiť na obsah
100% lokálne

JSON na schému Mongoose

Automaticky vytvorte pracovnú Mongoose schému z vášho JSON vzorku. Vygeneruje model s typmi, referencami a konfiguráciou.

Vstup
Výstup

JSON na schému Mongoose

Vložte vzorový dokument JSON — samostatný objekt alebo pole — a tento nástroj odvodí tvar a vygeneruje pracovnú definíciu mongoose.Schema() s exportom modelu. Je určený na moment, keď máte JSON payload z API, súbor semien alebo starý výpis databázy a potrebujete Mongoose model, bez ručného píšania každého poľa.

Nástroj číta skutočné hodnoty na výber skutočných typov: reťazce sa stanú String, čísla sa stanú Number, dátum podobný ISO sa stane Date a pole, ktorého názov sa končí na "Id" (alebo forma poľa "…Ids"), sa stane referencou ObjectId, pretože takto by to modeloval ručne napísaný model. Vnorené objekty sa stanú svojou vlastnou novo vytvorené mongoose.Schema({...}) v nadradenú schému a pole objektov sa stane poľom tej vnorenej schémy. Možnosti zvládajú zvyšok: pomenujte model, označte skalárne polia ako povinné, preneste vzorové vlastné hodnoty ako predvolené, prepínajte možnosť časových značiek, rozhodovacia podľa toho, či poddokumenty zachovávajú svoj vlastný _id a prepínajte polia s príponou "Id" medzi ObjectId a obyčajným String. Vyberte si CommonJS alebo ES module syntax a prípadne pridajte vyhovujúce rozhranie TypeScript pod model.

Pokiaľ namiesto jedného vložíte pole vzorových dokumentov, nástroj si všimne polia prítomné len v niektorých z nich, čo je užitočné, keď reálne dáta nie sú dokonale jednotná — tie sa stanú voliteľnými v generovanom rozhraní. Konce riadkov Windows a Unix sú považované za identické a vstup príliš veľký na pohodlné spracovanie sa namiesto zámrazu záložky hlási. Počet pod výstupom ukazuje počet polí, počet vnorených schém a počet znakov.

Všetko beží lokálne vo vašom prehliadači — JSON, ktorý vložíte a ktorý môže obsahovať skutočné záznamy, sa nikdy nikam nenahrávajú. Keď schéma vyzerá správne, skopírujte ju, stiahnite si ju ako súbor .txt a vložte do vlastného súboru .js alebo .ts, alebo odošlite výstup späť do vstupu a vyrefinujte ho ďalej.

Časté otázky

Aké typy detekuje?
String, Number, Boolean, Date (z reťazcov podobných ISO dátumom), ObjectId (pre polia, ktorých názov sa končí na "Id" alebo "Ids"), vnorené schémy pre objekty a polia ktoréhokoľvek z nich. Pole bez spoľahlivého typu alebo pole, ktorého typ sa medzi vzorkami dokumentov líši, sa stane mongoose.Schema.Types.Mixed.
Môžem vložiť viac ako jeden vzorový dokument?
Áno. Vložte pole objektov a nástroj ich zlúči: pole prítomné len v niektorých z nich sa v generovanom rozhraní TypeScript považuje za voliteľné a pole, ktorého typ sa líši medzi dokumentami, sa vracia na Mixed.
Čo kontroluje "Zahrnutý _id v subdokumentoch"?
Mongoose predvolene prideluje kazdému vnútenému poddokumentu svoju vlastnú _id. Vypnutie jej pridá { _id: false } ku kazdej generovanej vnorenej schéme, čo je časta voľba pre poddokumenty, ktoré sa nikdy nepytajú samotne.
Prečo sa pole ako "userId" stáva ObjectId?
Pole, ktorého názov sa končí na "Id" (jednotné číslo) alebo "Ids" (pole referencií), je takmer vždy odkazom na iný dokument, takže nástroj ho vykreslí ako mongoose.Schema.Types.ObjectId namiesto String. Vypnite "Použiť ObjectId pre polia "Id"" ak chcete namiesto toho obyčajné reťazce.
Je môj JSON nahratý niekde?
Nie. Generovanie schémy beží úplne vo vašom prehliadači — váš JSON, vrátane všetkých skutočných záznamov, ktoré obsahuje, nikdy neopusťuje vaše zariadenie.