במדריך למתחילים הזה, תיצרו ותפרסו מסד נתונים קטן לדוגמה ותיגשו אליו מחלק הקצה של React.
דרישות מוקדמות
כדי להשלים את המדריך למתחילים הזה, תצטרכו:
- סביבת Node.js עם NPM.
- חשבון Google.
מדריך
| מדריך | |
|---|---|
1. אתחול הפרויקטיוצרים ספרייה חדשה ומפעילים בה פרויקט Firebase. כשמופיעה בקשה, בוחרים באפשרויות הבאות:
|
|
2. בדיקת ההגדרות לדוגמה של GraphQLב-SQL Connect, מגדירים את כל הסכימות והפעולות של מסד הנתונים באמצעות GraphQL. כשאתם מאתחלים את הפרויקט, ה-CLI של Firebase יוצר כמה הגדרות לדוגמה כדי לעזור לכם להתחיל. |
dataconnect/schema/schema.gql (קטע)
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 client SDKהפקודה הזו משתמשת בהגדרות GraphQL כדי ליצור ספריית JavaScript שמיועדת במיוחד למסד הנתונים שלכם, כולל הגדרות של סוגים. משתמשים בספרייה הזו באפליקציית הלקוח כדי לבצע את כל פעולות מסד הנתונים. אפשר ליצור ספריות לכמה פלטפורמות, כולל Kotlin ל-Android, Swift ל-iOS ו-Flutter, על ידי הוספת הגדרות ל- |
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מחליפים את התוכן של שימו לב שהאפליקציה משלימה את הגישה הנדרשת למסד הנתונים באמצעות פונקציה מתוך ה-SDK שנוצר. ה-SDK שנוצר עבור 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 בשורה עם הקוד שמאפשרים לקרוא ולכתוב נתונים מקובצי הגדרת הסכימה, ולהריץ שאילתות ושינויים מהגדרות הפעולה.
- שמירה אוטומטית של סנכרון בין ערכות ה-SDK שנוצרו לבין הגדרות GraphQL.
- הגדרה פשוטה יותר של אמולטור מקומי.
- פריסה פשוטה יותר בסביבת הייצור.
שימוש באמולטור SQL Connect לפיתוח מקומי
במדריך הזה הראינו איך פורסים סכימות ופעולות של SQL Connect ישירות בסביבת הייצור, אבל סביר להניח שלא תרצו לבצע שינויים במסד הנתונים של סביבת הייצור בזמן שאתם מפתחים את האפליקציה. במקום זאת, מומלץ להגדיר את SQL Connectהאמולטור של SQL Connect ולבצע את עבודת הפיתוח מולו ולא מול סביבת הייצור. האמולטור מגדיר מופע מקומי של PGlite שמתנהג באופן דומה למופע פעיל של PostgreSQL ב-Cloud SQL.
איך כותבים סכימות ופעולות לאפליקציה
כשמפתחים אפליקציות באמצעות SQL Connect, עיצוב הסכימות והפעולות הוא אחת ממשימות הפיתוח הראשונות והחשובות ביותר שתבצעו.
- Gemini במסוף Firebase הוא כלי מבוסס-AI שיכול ליצור SQL Connect סכימות מתיאור של האפליקציה בשפה טבעית. הכלי הזה יכול לעזור לכם להתחיל לעבוד במהירות, במיוחד אם אף פעם לא עבדתם עם מסדי נתונים רלציוניים.
- לחלופין, אפשר לכתוב סכימות של מסדי נתונים, שאילתות ומוטציות ישירות באמצעות GraphQL. כדאי להתחיל עם ההנחיות במאמר בנושא תכנון סכימות של SQL Connect, ואז להמשיך לדפים הבאים כדי ללמוד איך לכתוב פעולות.
SQL Connect
אתם יכולים להשתמש ב-SQL Connect כדי לכתוב אפליקציות לקוח שמגיבות לשינויים בנתונים בזמן אמת. אפשר לעיין במאמר קבלת עדכונים בזמן אמת מ-SQL Connect.