JSON у схему Mongoose
Перетворіть приклад JSON на повноцінну схему Mongoose з автоматичним визначенням типів даних та генерацією готового кодексу моделі.
JSON у схему Mongoose
Вставте приклад JSON-документа — один об'єкт або масив об'єктів — і інструмент визначить структуру та створить готове визначення mongoose.Schema() з експортом моделі. Це призначено для моменту, коли у вас є JSON-корисне навантаження від API, файлу насіння або старої вивантаження бази даних і потрібна модель Mongoose, без ручного введення кожного поля.
Інструмент читає реальні значення для вибору реальних типів: рядки стають String, числа стають Number, рядок дати в форматі ISO стає Date, а поле, назва якого закінчується на "Id" (або форма масиву "…Ids"), стає посиланням ObjectId, оскільки саме так це моделюється в написаній вручну схемі. Вкладені об'єкти стають власною новою mongoose.Schema({...}) всередині батьківської, а масив об'єктів стає масивом цієї вкладеної схеми. Параметри займаються рештою: назвіть модель, позначте скалярні поля як обов'язкові, перенесіть власні значення прикладу як значення за замовчуванням, вмикайте опцію позначення часу, вирішіть, зберігають ли поддокументи власний _id, та перемикайтесь між полями з суфіксом "Id" між ObjectId та звичайною String. Виберіть синтаксис CommonJS або ES модуля та за необхідності додайте відповідний інтерфейс TypeScript нижче моделі.
Передача масиву прикладів документів замість одного дозволяє інструменту помітити поля, присутні лише в деяких із них, що корисно, коли реальні дані не зовсім однорідні — вони стають необов'язковими в створеному інтерфейсі. Кінці рядків Windows та Unix обробляються однаково, і занадто великий ввід замість замерзання вкладки повідомляється. Лічильник під виводом показує кількість полів, кількість вкладених схем та кількість символів.
Все працює локально у вашому браузері — JSON, який ви вставляєте, який може містити реальні записи, ніколи не завантажується. Коли схема виглядає правильно, скопіюйте її, завантажте як файл .txt для вставки у власний файл .js або .ts, або відправте вивід назад на введення для подальшого уточнення.