Sébastien TIMONER
वेब विकास और तकनीकी टीम प्रबंधन में विशेषज्ञ, मैं प्रभावी डिजिटल समाधानों के निर्माण और अनुकूलन में विशेषज्ञता रखता हूं। React.js, Node.js, TypeScript, Symfony और IoT के लिए Zephyr OS जैसी आधुनिक तकनीकों की गहरी समझ के साथ, मैं offroadLabs में विभिन्न क्षेत्रों की कंपनियों के लिए जटिल SaaS और IoT परियोजनाओं की सफलता सुनिश्चित करता हूं, डिजाइन से लेकर प्रोडक्शन तक।
offroadLabs में, मैं तकनीकी विशेषज्ञता और सहयोगात्मक दृष्टिकोण को जोड़ते हुए कस्टम विकास सेवाएं प्रदान करता हूं। चाहे एक नवीन SaaS समाधान बनाना हो, Zephyr OS के साथ IoT सिस्टम विकसित करना हो, मौजूदा एप्लिकेशन को आधुनिक बनाना हो, या एक टीम के कौशल विकास में सहायता करना हो, मैं प्रत्येक परियोजना की विशिष्ट आवश्यकताओं के अनुरूप मजबूत और प्रभावी समाधान प्रदान करने के लिए प्रतिबद्ध हूं।
मैं ऐक्स-एन-प्रोवेंस के आसपास या पूर्ण रिमोट असाइनमेंट के लिए उपलब्ध हूं।
Prisma वह जादुई टूल है जो Node.js के साथ डेटाबेस प्रबंधन को बिना सिर खपाए करने में मदद करता है! 🧙♂️ पुराने समय के ORM को भूल जाइए जहां हर क्वेरी आपको सिरदर्द देती थी। Prisma तेज़, सरल और आधुनिक डेवलपर्स के लिए उपयुक्त है। इस लेख में, हम जानेंगे कि Prisma कैसे आपका सबसे अच्छा दोस्त बनने वाला है (अगर पहले से नहीं है 😉), और कैसे इसे Zod के साथ जोड़कर बेहतरीन डेटा वैलिडेशन प्राप्त कर सकते हैं।
कुछ शब्दों में: Prisma आपकी जिंदगी को आसान बनाने के लिए बनाया गया है। यहाँ वो खास बातें हैं जो Prisma को विशेष बनाती हैं:
Prisma की यात्रा के लिए तैयार हैं? चलिए शुरू करते हैं! स्थापना के लिए, इन कमांड लाइनों से शुरुआत करें:
bash
यह एक prisma
फोल्डर जनरेट करेगा जिसमें एक schema.prisma
फाइल और डेटाबेस कॉन्फ़िगरेशन के लिए एक .env
फाइल होगी।
PostgreSQL के साथ Prisma का उपयोग करने से पहले, आपको एक एक्सेस योग्य PostgreSQL डेटाबेस की आवश्यकता होगी। जब आपका PostgreSQL डेटाबेस तैयार हो, तो Prisma द्वारा बनाई गई .env
फाइल में इसका कनेक्शन URL जोड़ें। उदाहरण के लिए:
dotenv
USER
, PASSWORD
, localhost
, 5432
और my_database
को अपनी PostgreSQL कनेक्शन जानकारी से बदलें। Prisma आपके डेटाबेस से कनेक्ट करने के लिए इस URL का उपयोग करेगा।
फिर, schema.prisma
फाइल में, सुनिश्चित करें कि डेटाबेस प्रोवाइडर (provider
) PostgreSQL पर सही ढंग से कॉन्फ़िगर किया गया है:
prisma
बस इतना ही! Prisma अब PostgreSQL से कनेक्ट करने के लिए कॉन्फ़िगर हो गया है। 🎉
मान लीजिए आप एक ब्लॉग बना रहे हैं (क्लासिक, लेकिन प्रभावी) उपयोगकर्ताओं (User
) और पोस्ट (Post
) के साथ। यहाँ schema.prisma
में एक Prisma स्कीमा कैसी दिखती है:
prisma
सरल है, नहीं? Prisma आपको User
और Post
जैसे मॉडल घोषित करने की अनुमति देता है जो रिलेशनशिप और सब कुछ प्रबंधित करते हैं ताकि सब कुछ बिना किसी परेशानी के चले। 👌
एक बार आपका स्कीमा तैयार हो जाने के बाद, इसे आपके डेटाबेस में टेबल्स में बदलने का समय आ गया है। इसे माइग्रेशन कहा जाता है। अपनी पहली माइग्रेशन शुरू करने के लिए, यह कमांड चलाएं:
bash
बस, आपका डेटाबेस कॉन्फ़िगर हो गया! Prisma ने पर्दे के पीछे सारा काम किया, एक असली डेटा सहायक की तरह। 🧙♀️
Prisma Client एक शक्तिशाली ORM है जो आपको आसानी से अपना डेटा हैंडल करने की अनुमति देता है। यहाँ कुछ उदाहरण हैं:
typescript
सभी पोस्ट देखना चाहते हैं? यहाँ कैसे करें:
typescript
ड्राफ्ट मोड में एक पोस्ट? कोई चिंता नहीं, हम इसे पलक झपकते ही प्रकाशित कर देते हैं:
typescript
एक दुखद कार्रवाई, लेकिन कभी-कभी आवश्यक। यहाँ एक उपयोगकर्ता और उसकी सभी संबंधित पोस्ट कैसे हटाएं:
typescript
Prisma आपके डेटा की संरचना को प्रबंधित करता है, लेकिन वैलिडेशन का क्या? यहीं Zod मंच पर आता है! एक अतिरिक्त सुरक्षा परत की कल्पना करें जो डेटाबेस में सेव करने से पहले ही डेटा की सटीकता सुनिश्चित करती है। यही Zod करता है, स्टाइल और दक्षता के साथ! 🎩
Prisma के साथ Zod का उपयोग करने के लिए, इसे अपने प्रोजेक्ट में इंस्टॉल करें।
bash
आइए उपयोगकर्ता बनाने के लिए वैलिडेशन का एक उदाहरण लें। हम Prisma को डेटा भेजने से पहले यह सुनिश्चित करने के लिए एक Zod स्कीमा परिभाषित करेंगे कि डेटा सही है।
typescript
Prisma के साथ उपयोगकर्ता बनाने से पहले, हम Zod के साथ डेटा को वैलिडेट करते हैं। यदि यह सही है, तो इसे Prisma को भेजा जाता है। यदि नहीं, तो एक वैलिडेशन एरर वापस आती है (और इसे दरकिनार करने का कोई रास्ता नहीं!)।
typescript
Zod जटिल डेटा के लिए भी काम करता है। उदाहरण के लिए, एक Post
बनाने के लिए, हम जांचते हैं कि authorId
मौजूद है और मान्य है:
typescript