इस क्विकस्टार्ट में, आपको एक छोटा सैंपल डेटाबेस बनाने और उसे डिप्लॉय करने का तरीका बताया जाएगा. साथ ही, इसे React फ़्रंटएंड से ऐक्सेस करने का तरीका भी बताया जाएगा.
ज़रूरी शर्तें
क्विकस्टार्ट को पूरा करने के लिए, आपको इनकी ज़रूरत होगी:
- NPM के साथ Node.js एनवायरमेंट.
- Google खाता.
ट्यूटोरियल
| ट्यूटोरियल | |
|---|---|
1. अपना प्रोजेक्ट शुरू करनानई डायरेक्ट्री बनाएं और उसमें Firebase प्रोजेक्ट शुरू करें. जब कहा जाए, तब यहां दिए गए विकल्प चुनें:
|
|
2. GraphQL की परिभाषाओं का उदाहरण देखनाSQL Connect में, GraphQL का इस्तेमाल करके अपने सभी डेटाबेस स्कीमा और ऑपरेशन तय किए जाते हैं. प्रोजेक्ट शुरू करते समय, Firebase CLI ने कुछ उदाहरण परिभाषाएं बनाई थीं, ताकि आप शुरू कर सकें. |
dataconnect/schema/schema.gql (excerpt)
type Movie @table { title: String! imageUrl: String! genre: String } type MovieMetadata @table { movie: Movie! @unique rating: Float releaseYear: Int description: String } query ListMovies @auth(level: PUBLIC) { movies { id title imageUrl genre } } |
3. अपने स्कीमा और कार्रवाइयां डिप्लॉय करनाजब भी अपने डेटाबेस स्कीमा, क्वेरी या म्यूटेशन में बदलाव किए जाते हैं, तो आपको उन्हें डिप्लॉय करना होगा. ऐसा करने पर ही, डेटाबेस पर बदलाव लागू होंगे. |
|
4. डेटाबेस में सैंपल डेटा डालनाइस सीड डेटा से, आपको सैंपल ऐप्लिकेशन की जांच करते समय कुछ डेटा देखने को मिलेगा. ध्यान दें कि इस चरण में, आपको मनमुताबिक GraphQL को लागू करना होगा. इसकी अनुमति एडमिन से जुड़े कामों के लिए दी जाती है. |
|
5. JavaScript क्लाइंट SDK जनरेट करनायह कमांड, आपकी GraphQL परिभाषाओं का इस्तेमाल करके JavaScript लाइब्रेरी जनरेट करती है. यह लाइब्रेरी खास तौर पर आपके डेटाबेस के लिए होती है और इसमें टाइप की परिभाषाएं भी शामिल होती हैं. इस लाइब्रेरी का इस्तेमाल, क्लाइंट ऐप्लिकेशन में सभी डेटाबेस ऑपरेशन करने के लिए किया जाता है.
|
export interface ListMoviesData { movies: ({ id: UUIDString; title: string; imageUrl: string; genre?: string | null; } & Movie_Key)[]; } export function useListMovies( options?: useDataConnectQueryOptions&<ListMoviesData> ): UseDataConnectQueryResult&<ListMoviesData, undefined>; |
6. वेब ऐप्लिकेशन सेट अप करनाअपने Firebase प्रोजेक्ट में नया वेब ऐप्लिकेशन जोड़ने के लिए, इन कमांड को चलाएं. |
|
7. React क्लाइंट का सैंपल लिखना
ध्यान दें कि ऐप्लिकेशन, जनरेट किए गए एसडीके के फ़ंक्शन का इस्तेमाल करके, ज़रूरी डेटाबेस ऐक्सेस करता है. React के लिए जनरेट किया गया एसडीके, स्टेट मैनेजमेंट को हैंडल करने के लिए TanStack Query का इस्तेमाल करता है. |
import { initializeApp } from 'firebase/app'; import firebaseConfig from './firebase-config.json'; import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; import { useListMovies } from '@dataconnect/generated/react'; import './App.css'; const app = initializeApp(firebaseConfig); const queryClient = new QueryClient(); function App() { return ( <QueryClientProvider client={queryClient}> <Movies /> </QueryClientProvider> ); } function Movies() { const { isLoading, data } = useListMovies(); if (isLoading) { return <h1>...</h1> } return ( <> {data?.movies.map( movie => <h1 key={movie.id}>{movie.title}</h1> )} </> ); } export default App; |
8. वेब ऐप्लिकेशन आज़माएँउदाहरण ऐप्लिकेशन को काम करते हुए देखने के लिए, डेवलपमेंट सर्वर शुरू करें. |
|
अगले चरण
SQL Connect VS Code एक्सटेंशन आज़माएं
SQL Connect का इस्तेमाल करके डेवलपमेंट करते समय, हमारा सुझाव है कि आप SQL Connect VS Code एक्सटेंशन का इस्तेमाल करें. अगर Visual Studio Code का इस्तेमाल मुख्य डेवलपमेंट एनवायरमेंट के तौर पर नहीं किया जाता है, तो भी एक्सटेंशन कई सुविधाएं देता है. इनसे स्कीमा और ऑपरेशन डेवलपमेंट को ज़्यादा आसानी से किया जा सकता है:
- GraphQL लैंग्वेज सर्वर, जो SQL Connect के लिए सिंटैक्स की जांच करने और ऑटोकंप्लीट के सुझाव देने की सुविधा देता है
- आपके कोड के साथ लाइन में CodeLens बटन होते हैं. इनकी मदद से, स्कीमा की परिभाषा वाली फ़ाइलों से डेटा पढ़ा और लिखा जा सकता है. साथ ही, ऑपरेशन की परिभाषाओं से क्वेरी और म्यूटेशन लागू किए जा सकते हैं.
- जनरेट किए गए एसडीके को GraphQL की परिभाषाओं के साथ अपने-आप सिंक करके रखें.
- लोकल एम्युलेटर को आसानी से सेट अप किया जा सकता है.
- आसानी से प्रोडक्शन में डिप्लॉय करने की सुविधा.
लोकल डेवलपमेंट के लिए SQL Connect एम्युलेटर का इस्तेमाल करना
इस ट्यूटोरियल में, SQL Connect स्कीमा और कार्रवाइयों को सीधे प्रोडक्शन में डिप्लॉय करने का तरीका बताया गया है. हालांकि, ऐप्लिकेशन डेवलप करते समय, आपको प्रोडक्शन डेटाबेस में बदलाव नहीं करने चाहिए. इसके बजाय, SQL Connect एम्युलेटर सेट अप करें और प्रोडक्शन के बजाय, इस पर डेवलपमेंट का काम करें. यह एम्युलेटर, लोकल PGlite इंस्टेंस सेट अप करता है. यह CloudSQL पर मौजूद लाइव Postgres इंस्टेंस की तरह काम करता है.
अपने ऐप्लिकेशन के लिए स्कीमा और ऑपरेशन लिखने का तरीका जानें
SQL Connect की मदद से ऐप्लिकेशन डेवलप करते समय, स्कीमा और कार्रवाइयों का डिज़ाइन तैयार करना, डेवलपमेंट के सबसे पहले और सबसे अहम टास्क में से एक है.
- Firebase कंसोल में Gemini एक एआई टूल है. यह आपके ऐप्लिकेशन के बारे में सामान्य भाषा में दी गई जानकारी से SQL Connect स्कीमा जनरेट कर सकता है. इस टूल की मदद से, बहुत कम समय में काम शुरू किया जा सकता है. खास तौर पर, अगर आपने पहले कभी रिलेशनल डेटाबेस के साथ काम नहीं किया है.
- इसके अलावा, GraphQL का इस्तेमाल करके सीधे तौर पर डेटाबेस स्कीमा, क्वेरी, और म्यूटेशन लिखे जा सकते हैं. डिज़ाइन SQL Connect स्कीमा पेज से शुरू करें. इसके बाद, फ़ॉलो-अप पेजों पर जाकर, ऑपरेशन लिखने का तरीका जानें.