بدء استخدام Firebase Data Connect على الجهاز

في هذا الدليل السريع، ستتعرّف على كيفية إنشاء Firebase Data Connect في تطبيقك على الجهاز بدون إعداد مثيل SQL في مرحلة الإنتاج.

  • أضِف Firebase Data Connect إلى مشروعك على Firebase.
  • إعداد بيئة تطوير تتضمّن إضافة Visual Studio Code للعمل مع مثيل محلي
  • بعد ذلك، سنوضّح لك كيفية:
    • إنشاء مخطّط لتطبيق أفلام
    • تحديد طلبات البحث والطفرات التي سيتم استخدامها في تطبيقك
    • اختبار طلبات البحث والطفرات باستخدام عيّنات البيانات في محاكي محلي
    • إنشاء حِزم تطوير برامج (SDK) ذات أنواع محدّدة بدقة واستخدامها في تطبيقك
    • نشر المخطّط النهائي وطلبات البحث والبيانات على السحابة الإلكترونية (اختياري، يجب توفّر خطة Blaze)

المتطلبات الأساسية

لاستخدام دليل البدء السريع هذا، ستحتاج إلى ما يلي:

إعداد بيئة التطوير

ستحتاج إلى Visual Studio Code لإدارة المخطّط وتحديد طلبات البحث التي سيتم استخدامها في تطبيقك، وسيتم تلقائيًا إنشاء حزمة SDK ذات بنية قوية:

  1. أنشئ دليلاً جديدًا لمشروعك على الجهاز.
  2. افتح VS Code في الدليل الجديد.
  3. ثبِّت إضافة Firebase Data Connect من Visual Studio Code Marketplace.

إعداد دليل المشروع

لإعداد مشروعك على الجهاز، عليك بدء دليل المشروع. في ال panel سمتها اليمنى من VS Code، انقر على رمز Firebase لفتح واجهة مستخدم إضافة Data Connect في VS Code:

  1. انقر على الزر تسجيل الدخول باستخدام حساب Google.
  2. انقر على الزر ربط مشروع Firebase واختَر المشروع الذي أنشأته سابقًا في وحدة التحكّم.
  3. انقر على الزر Run firebase init (تشغيل firebase init).
  4. انقر على الزر بدء المحاكيات.

إنشاء مخطّط

في دليل مشروع Firebase، في ملف /dataconnect/schema/schema.gql ، ابدأ بتحديد مخطّط GraphQL عن الأفلام.

فيلم

في Data Connect، يتم ربط حقول GraphQL بالأعمدة. يتضمّن الفيلم id، title، imageUrl وgenre. يتعرّف Data Connect على نوعَي data primitiv: String وUUID.

انسخ المقتطف التالي أو أزِل التعليقات من الأسطر المقابلة في الملف.

# By default, a UUID id key will be created by default as primary key.
# If you want to specify a primary key, say title, which you can do through
# the @table(key: "title") directive
type Movie @table {
  id: UUID! @default(expr: "uuidV4()")
  title: String!
  imageUrl: String!
  genre: String
}

MovieMetadata

انسخ المقتطف التالي أو أزِل التعليقات من الأسطر المقابلة في الملف.

# Movie - MovieMetadata is a one-to-one relationship
type MovieMetadata @table {
  # This time, we omit adding a primary key because
  # you can rely on Data Connect to manage it.

  # @unique indicates a 1-1 relationship
  movie: Movie! @unique
  # movieId: UUID <- this is created by the above reference
  rating: Float
  releaseYear: Int
  description: String
}

لاحظ أنّه تمّ ربط حقل movie بنوع Movie. يدرك "Data Connect" أنّ هذه علاقة بين "Movie" و"MovieMetadata"، وسيدير هذه العلاقة نيابةً عنك.

مزيد من المعلومات عن مخطّطات Data Connect في المستندات

إضافة بيانات إلى جداولك

في لوحة محرِّر VS Code، ستظهر لك أزرار CodeLens فوق أنواع GraphQL في /dataconnect/schema/schema.gql. يمكنك استخدام الزرَّين إضافة بيانات وتنفيذ (محلي) لإضافة بيانات إلى قاعدة البيانات المحلية.

لإضافة سجلّات إلى جدولَي Movie وMovieMetadata:

  1. في schema.gql، انقر على الزر إضافة بيانات أعلى Movie نوع بيان.
    زر &quot;إضافة بيانات&quot; في Code Lens لخدمة Firebase Data Connect
  2. في ملف Movie_insert.gql الذي يتم إنشاؤه، أدخِل البيانات في ملف ثابت لثلاثة حقول.
  3. انقر على الزر تشغيل (محلي).
    زرّ &quot;تشغيل&quot; في Code Lens لخدمة Firebase Data Connect
  4. كرِّر الخطوات السابقة لإضافة سجلّ إلى جدول MovieMetadata، مع توفير id لفيلمك في الحقل movieId، كما هو مطلوب في تحوُّل MovieMetadata_insert الذي تم إنشاؤه.

للتحقّق بسرعة من إضافة البيانات، اتّبِع الخطوات التالية:

  1. في schema.gql، انقر على الزر قراءة البيانات فوق بيان نوع Movie.
  2. في ملف Movie_read.gql الناتج، انقر على الزر تشغيل (محلي) ل ejecutant طلب البحث.

مزيد من المعلومات عن طفرات "ربط البيانات" في المستندات

تحديد طلب البحث

الآن، نأتي إلى الجزء الممتع: لنحدّد طلبات البحث التي ستحتاج إليها في طلبك. بصفتك مطوّرًا، اعتدت كتابة طلبات بحث SQL بدلاً من طلبات بحث GraphQL، لذا قد يبدو لك هذا الأمر مختلفًا بعض الشيء في البداية. ومع ذلك، فإنّ GraphQL أكثر إيجازًا وأمانًا من لغة SQL الأوّلية. وتسهّل إضافة VS Code تجربة التطوير.

ابدأ بتعديل ملف /dataconnect/connector/queries.gql. إذا أردت الحصول على كل الأفلام، استخدِم طلب بحث مثل هذا.

# File `/dataconnect/connector/queries.gql`

# @auth() directives control who can call each operation.
# Anyone should be able to list all movies, so the auth level is set to PUBLIC
query ListMovies @auth(level: PUBLIC) {
  movies {
    id
    title
    imageUrl
    genre
  }
}

نفِّذ الطلب باستخدام زر CodeLens القريب.

من الميزات المثيرة حقًا هنا هي إمكانية التعامل مع علاقات قاعدة البيانات كرسم بياني. بما أنّ MovieMetadata يحتوي على حقل movie يشير إلى فيلم، يمكنك التداخل في الحقل والحصول على معلومات عن معلومات الفيلم. حاوِل إضافة النوع الذي تم إنشاؤه movieMetadata_on_movie إلى طلب البحث ListMovies.

query ListMovies @auth(level: PUBLIC) {
  movies {
    id
    title
    imageUrl
    genre
    movieMetadata_on_movie {
        rating
    }
  }
}

مزيد من المعلومات حول طلبات البحث في Data Connect في المستندات

إنشاء حِزم تطوير برامج (SDK) واستخدامها في تطبيقك

في اللوحة اليمنى من VS Code، انقر على رمز Firebase لفتح واجهة مستخدم ملف التمديد Data Connect في VS Code:

  1. انقر على الزر إضافة حزمة تطوير البرامج (SDK) إلى التطبيق.
  2. في مربّع الحوار الذي يظهر، اختَر دليلاً يحتوي على رمز برمجي لتطبيقك. Data Connect. سيتم إنشاء رمز حزمة SDK و حفظه هناك.

  3. اختَر منصة تطبيقك، ثم لاحِظ أنّه يتم إنشاء رمز حزمة SDK على الفور في الدليل الذي اخترته.

تعرَّف على كيفية استخدام حزمة تطوير البرامج (SDK) التي تم إنشاؤها للاتّصال بطلبات البحث والتغييرات من تطبيقات العميل (الويب وAndroid وiOS وFlutter).

نشر المخطّط وطلب البحث في قناة الإصدار العلني

بعد الانتهاء من الإعداد على جهازك، يمكنك الآن نشر المخطّط والبيانات وطلبات البحث في السحابة الإلكترونية. ستحتاج إلى خطة Blaze لإعداد مثيل Cloud SQL.

  1. انتقِل إلى قسم "ربط البيانات" في وحدة تحكّم Firebase وأنشئ مثيلًا مجانيًا في Cloud SQL.

  2. في وحدة التحكّم المدمجة في VS Code، نفِّذ firebase init dataconnect و اختَر رقم تعريف المنطقة/الخدمة الذي أنشأته للتو في وحدة التحكّم.

  3. اختَر "نعم" عندما يُطلب منك "ملف dataconnect/dataconnect.yaml يوجد حاليًا، هل تريد استبداله؟".

  4. في واجهة مستخدم إضافة Data Connect في VS Code، انقر على الزر النشر في قناة الإصدار العلني.

  5. بعد نشر النموذج، انتقِل إلى وحدة تحكّم Firebase للتحقّق من تحميل المخطّط والعمليات والبيانات إلى السحابة الإلكترونية. من المفترض أن تتمكّن من عرض المخطّط وتنفيذ عملياتك على وحدة التحكّم أيضًا. سيتم تعديل مثيل Cloud SQL لـ PostgreSQL بالبيانات والمخطّط النهائيين المُنشئَين والمُنفَّذَين.

الخطوات التالية

راجِع مشروعك المنشور واكتشف المزيد من الأدوات:

  • يمكنك إضافة بيانات إلى قاعدة بياناتك، وفحص المخططات وتعديلها، وتتبُّع خدمة Data Connect في وحدة تحكُّم Firebase.

يمكنك الاطّلاع على مزيد من المعلومات في المستندات. على سبيل المثال، بعد أن اكتملت الخطوة الأولى: