JSON to Pydantic मॉडल जेनरेटर
किसी JSON सैंपल से तुरंत आपके ब्राउज़र में Pydantic v2 मॉडल क्लास जेनरेट करें। आपका JSON आपके डिवाइस पर रहता है।
आपका JSON पूरी तरह आपके ब्राउज़र में पार्स होकर Pydantic मॉडल में बदलता है, इसलिए यह आपके डिवाइस पर रहता है और कुछ भी सर्वर पर अपलोड नहीं होता।
Go, Rust या TypeScript टाइप चाहिए? JSON to Code आज़माएँ।
JSON to Pydantic के बारे में
यह json to pydantic जेनरेटर किसी सैंपल JSON ऑब्जेक्ट या ऐरे को सेकंडों में उपयोग के लिए तैयार Pydantic v2 मॉडल क्लास में बदल देता है। एक असली API रिस्पॉन्स पेस्ट करें और यह हर फ़ील्ड का प्रकार अनुमानित करता है — str, int, float और bool — nullable फ़ील्ड को Optional के रूप में चिह्नित करता है, ऐरे को list[...] प्रकारों में एकीकृत करता है, और हर नेस्टेड ऑब्जेक्ट को नाम से संदर्भित उसके अपने BaseModel में बदल देता है। जो कीज़ मान्य Python identifier नहीं हैं उन्हें Field(alias=...) के माध्यम से रखा जाता है ताकि मॉडल फिर भी आपके मूल पेलोड को पार्स करे। यह उन Python और FastAPI डेवलपर्स के लिए बनाया गया है जो टाइप किया हुआ क्लाइंट जोड़ते समय हाथ से लिखने के बजाय json से pydantic मॉडल जेनरेट करना पसंद करते हैं। सब कुछ आपके ब्राउज़र में स्थानीय रूप से चलता है, इसलिए आपके द्वारा पेस्ट किया गया JSON आपके डिवाइस पर संसाधित होता है और कुछ भी सर्वर पर अपलोड नहीं होता।
विशेषताएँ
- किसी भी JSON ऑब्जेक्ट या ऐरे से Pydantic v2 BaseModel क्लास जेनरेट करता है
- आपके सैंपल वैल्यू से str, int, float और bool अनुमानित करता है
- nullable और कभी-कभी अनुपस्थित फ़ील्ड को Optional[...] के रूप में चिह्नित करता है
- नेस्टेड ऑब्जेक्ट को उनके अपने नामित BaseModel क्लास में बदलता है
- ऐरे को list[...] प्रकारों में एकीकृत करता है, खाली ऐरे list[Any] बन जाते हैं
- अमान्य Python कीज़ को Field(alias=...) के जरिए रखता है ताकि पार्सिंग चलती रहे
- BaseModel, Field, Optional और Any के लिए साफ़ इम्पोर्ट देता है
- परिणाम को कॉपी करें या इसे .py फ़ाइल के रूप में डाउनलोड करें
JSON to Pydantic का उपयोग कैसे करें
- अपना JSON ऑब्जेक्ट या ऐरे इनपुट बॉक्स में पेस्ट करें।
- Root मॉडल का नाम अपने schema से मिलाने के लिए सेट करें, या इसे Model छोड़ दें।
- आउटपुट पैनल में जेनरेट की गई Pydantic क्लास की समीक्षा करें।
- परिणाम को कॉपी करें या इसे .py फ़ाइल के रूप में डाउनलोड करें।
उदाहरण
इनपुट
{ "id": 1, "name": "Ada", "address": { "city": "London" } }
आउटपुट
from pydantic import BaseModel
class Address(BaseModel):
city: str
class Model(BaseModel):
id: int
name: str
address: Address
एक नेस्टेड ऑब्जेक्ट अपना BaseModel बन जाता है, रूट क्लास अंत में रहती है।
सामान्य त्रुटियाँ और समस्या निवारण
- आउटपुट एक लाइन और कॉलम के साथ Invalid एरर दिखाता है। — JSON में ट्रेलिंग कॉमा, सिंगल कोट्स या बिना कोट वाली की जैसी सिंटैक्स समस्या है। बताई गई लाइन और कॉलम पर इसे ठीक करें, फिर मॉडल फिर से जेनरेट हो जाते हैं।
- कोई फ़ील्ड ठोस प्रकार के बजाय Optional[Any] के रूप में आई। — उस की के लिए हर सैंपल वैल्यू null थी, इसलिए कोई ठोस प्रकार अनुमानित नहीं हो सका। उस फ़ील्ड के लिए असली वैल्यू वाला सैंपल दें।
- कोई फ़ील्ड एक नामांतरित एट्रिब्यूट के साथ Field(alias=...) उपयोग करती है। — वह की एक मान्य Python identifier नहीं है या एक आरक्षित शब्द है, इसलिए इसे एक सुरक्षित एट्रिब्यूट नाम के तहत रखा गया है और मूल की को alias के रूप में रखा गया है।
- कोई list फ़ील्ड list[Any] के रूप में आई। — आपके सैंपल का ऐरे खाली था, इसलिए कोई तत्व प्रकार अनुमानित नहीं हो सका। टाइप की हुई list पाने के लिए कम से कम एक प्रतिनिधि तत्व शामिल करें।
अक्सर पूछे जाने वाले प्रश्न
- क्या यह Pydantic v2 मॉडल जेनरेट करता है?
- हाँ। आउटपुट Pydantic v2 सिंटैक्स को लक्ष्य करता है: हर मॉडल एक क्लास है जो BaseModel से सबक्लास होती है, एनोटेटेड फ़ील्ड के साथ, और जहाँ कोई JSON की मान्य Python identifier नहीं है वहाँ Field(alias=...) के साथ।
- नेस्टेड ऑब्जेक्ट कैसे संभाले जाते हैं?
- हर नेस्टेड ऑब्जेक्ट अपनी BaseModel क्लास बन जाता है, जिसका नाम स्वामी की से PascalCase में बनता है, और पैरेंट उसे प्रकार से संदर्भित करता है। क्लास dependency क्रम में निकलती हैं, रूट मॉडल अंत में।
- यह JSON प्रकारों को Python प्रकारों में कैसे मैप करता है?
- स्ट्रिंग str बन जाती हैं, पूर्ण संख्याएँ int, दशमलव float, बूलियन bool, null से Optional बनता है, ऐरे एकीकृत तत्व प्रकार के साथ list[...] बन जाते हैं, और ऑब्जेक्ट नेस्टेड BaseModel बन जाते हैं।
- उन कीज़ का क्या होता है जो मान्य Python नाम नहीं हैं?
- first-name या 2fa जैसी की, या class जैसा आरक्षित शब्द, एक सुरक्षित snake_case एट्रिब्यूट के तहत रखी जाती है और मूल की को Field(alias="...") के साथ सुरक्षित रखा जाता है ताकि मॉडल फिर भी आपके पेलोड को पार्स करे।
- ऐरे और खाली ऐरे कैसे बदले जाते हैं?
- ऐरे अपने तत्वों के एकीकृत प्रकार से list[...] बन जाते हैं, ऑब्जेक्ट के ऐरे के लिए एक नेस्टेड BaseModel सहित। एक खाली ऐरे के पास अनुमान लगाने के लिए कोई तत्व प्रकार नहीं होता, इसलिए वह list[Any] बन जाता है।
- क्या Pydantic मॉडल जेनरेट करते समय मेरा JSON कहीं भेजा जाता है?
- नहीं। JSON to Pydantic रूपांतरण पूरी तरह आपके ब्राउज़र में चलता है, इसलिए आपके द्वारा पेस्ट किया गया डेटा स्थानीय रूप से संसाधित होता है और कभी आपके डिवाइस से बाहर नहीं जाता।
संबंधित टूल
- JSON से TypeScript — JSON नमूने से TypeScript इंटरफ़ेस जेनरेट करें।
- JSON से कोड — JSON से Go, Rust, Python, Java, Kotlin, C# और TypeScript टाइप जेनरेट करें।
- JSON Schema Generator और Validator — एक नमूने से JSON Schema जनरेट करें या JSON दस्तावेज़ मान्य करें।
- JSON फ़ॉर्मेटर — त्रुटि की स्थिति के साथ JSON को सुंदर बनाएँ, छोटा करें और वैलिडेट करें।
- JSON to Zod — किसी JSON सैंपल से एक Zod schema जेनरेट करें, प्रकार अनुमानित करते हुए।
- JSON व्यूअर — विस्तृत/संक्षिप्त करने और नोड पाथ के साथ टेक्स्ट और फ़ोल्ड होने योग्य ट्री व्यूअर।
सभी ArrayKit टूल