Trong phần bắt đầu nhanh này, bạn sẽ tìm hiểu cách tạo Firebase Data Connect trong ứng dụng của mình trên máy mà không cần thiết lập phiên bản SQL chính thức.
- Thêm Firebase Data Connect vào dự án Firebase của bạn.
- Thiết lập môi trường phát triển bao gồm tiện ích Visual Studio Code để làm việc với một thực thể cục bộ.
- Sau đó, chúng tôi sẽ hướng dẫn bạn cách:
- Tạo giản đồ cho ứng dụng phim
- Xác định cụm từ tìm kiếm và đột biến sẽ được sử dụng trong ứng dụng
- Kiểm thử truy vấn và dữ liệu đột biến bằng dữ liệu mẫu so với trình mô phỏng cục bộ
- Tạo SDK được nhập đúng và sử dụng chúng trong ứng dụng của bạn
- Triển khai giản đồ, truy vấn và dữ liệu cuối cùng lên đám mây (Không bắt buộc, cần có gói Blaze).
Điều kiện tiên quyết
Để sử dụng tính năng bắt đầu nhanh này, bạn cần có:
- Linux, macOS hoặc Windows
- Visual Studio Code
- Cài đặt Node.js bằng nvm-windows cho Windows hoặc nvm cho macOS hoặc Linux.
- Tạo một dự án Firebase trong Bảng điều khiển Firebase.
Thiết lập môi trường phát triển
Bạn sẽ cần Visual Studio Code để quản lý giản đồ và xác định các truy vấn sẽ được sử dụng trong ứng dụng của bạn. Đồng thời, một SDK có kiểu mạnh sẽ được tạo tự động cho bạn:
- Tạo một thư mục mới cho dự án cục bộ của bạn.
- Mở VS Code trong thư mục mới.
- Cài đặt tiện ích Firebase Data Connect từ Visual Studio Code Marketplace.
Thiết lập thư mục dự án
Để thiết lập dự án cục bộ, hãy khởi chạy thư mục dự án. Trong bảng điều khiển bên trái của VS Code, hãy nhấp vào biểu tượng Firebase để mở giao diện người dùng của tiện ích Data Connect VS Code:
- Nhấp vào nút Sign in with Google (Đăng nhập bằng Google).
- Nhấp vào nút Connect a Firebase project (Kết nối dự án Firebase) rồi chọn dự án bạn được tạo trước đó trong bảng điều khiển.
- Nhấp vào nút Run firebase init (Chạy firebase init).
Nhấp vào nút Start emulators (Bắt đầu trình mô phỏng).
Tạo giản đồ
Trong thư mục dự án Firebase, ở tệp /dataconnect/schema/schema.gql
, hãy bắt đầu xác định một giản đồ GraphQL về phim.
Phim
Trong Data Connect, các trường GraphQL được liên kết với các cột. Phim có id
,
title
, imageUrl
và genre
. Data Connect nhận dạng các loại dữ liệu nguyên gốc: String
và UUID
.
Sao chép đoạn mã sau hoặc bỏ ghi chú các dòng tương ứng trong tệp.
# 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
}
Siêu dữ liệu phim
Sao chép đoạn mã sau hoặc bỏ ghi chú các dòng tương ứng trong tệp.
# 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
}
Lưu ý rằng trường movie
được liên kết với một loại Movie
.
Data Connect hiểu rằng đây là mối quan hệ giữa Movie
và MovieMetadata
, đồng thời sẽ quản lý mối quan hệ này cho bạn.
Tìm hiểu thêm về giản đồ Data Connect trong tài liệu
Thêm dữ liệu vào bảng
Trong bảng điều khiển trình soạn thảo VS Code, bạn sẽ thấy các nút CodeLens xuất hiện trên các loại GraphQL trong /dataconnect/schema/schema.gql
. Bạn có thể sử dụng các nút Add data (Thêm dữ liệu) và Run (Local) (Chạy (Tại máy)) để thêm dữ liệu vào cơ sở dữ liệu cục bộ.
Cách thêm bản ghi vào bảng Movie
và MovieMetadata
:
- Trong
schema.gql
, hãy nhấp vào nút Thêm dữ liệu phía trên loạiMovie
.
- Trong tệp
Movie_insert.gql
được tạo, dữ liệu mã cứng cho 3 trường. - Nhấp vào nút Run (Local) (Chạy (Cục bộ).
) - Lặp lại các bước trước đó để thêm một bản ghi vào bảng
MovieMetadata
, cung cấpuid
của Phim vào trườngmovie
, như được nhắc trong trường đã tạo ra đột biếnMovieMetadata_insert
.
Cách nhanh chóng xác minh dữ liệu đã được thêm:
- Quay lại
schema.gql
, nhấp vào nút Đọc dữ liệu. - Trong tệp
Movie_read.gql
thu được, hãy nhấp vào nút Run (Local) (Chạy (Cục bộ)) để thực thi truy vấn.
Tìm hiểu thêm về các đột biến Data Connect trong tài liệu
Xác định truy vấn của bạn
Bây giờ, phần thú vị: hãy xác định các truy vấn bạn sẽ cần trong ứng dụng của mình. Là một nhà phát triển, bạn đã quen với việc viết truy vấn SQL thay vì truy vấn GraphQL, vì vậy, ban đầu, bạn có thể cảm thấy hơi khác. Tuy nhiên, GraphQL ngắn gọn và an toàn về kiểu hơn nhiều so với SQL thô. Tiện ích VS Code của chúng tôi cũng giúp bạn dễ dàng phát triển.
Bắt đầu chỉnh sửa tệp /dataconnect/connector/queries.gql
. Nếu bạn muốn nhận tất cả phim, hãy sử dụng truy vấn như sau.
# 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
}
}
Thực thi truy vấn bằng cách sử dụng nút CodeLens lân cận.
Một tính năng thực sự thú vị ở đây là khả năng xử lý
mối quan hệ như một biểu đồ. Vì MovieMetadata có trường movie
tham chiếu một bộ phim, bạn có thể lồng ghép vào thực địa và nhận thông tin về
thông tin phim trở lại. Hãy thử thêm loại movieMetadata_on_movie
đã tạo vào loại
Truy vấn ListMovies.
query ListMovies @auth(level: PUBLIC) {
movies {
id
title
imageUrl
genre
movieMetadata_on_movie {
rating
}
}
}
Tìm hiểu thêm về truy vấn Data Connect trong tài liệu
Tạo và sử dụng SDK trong ứng dụng
Trong bảng điều khiển bên trái của VS Code, hãy nhấp vào biểu tượng Firebase để mở giao diện người dùng của tiện ích Data Connect VS Code:
- Nhấp vào nút Add SDK to app (Thêm SDK vào ứng dụng).
Trong hộp thoại xuất hiện, hãy chọn một thư mục chứa mã cho ứng dụng của bạn. Data Connect. Mã SDK sẽ được tạo và lưu tại đó.
Chọn nền tảng ứng dụng của bạn, sau đó lưu ý rằng mã SDK sẽ xuất hiện ngay lập tức được tạo trong thư mục bạn đã chọn.
Tìm hiểu cách sử dụng SDK đã tạo để gọi truy vấn và đột biến từ ứng dụng ứng dụng (web, Android, iOS, Flutter).
Triển khai giản đồ và truy vấn vào môi trường sản xuất
Sau khi thiết lập cục bộ trên ứng dụng, bạn hiện có thể triển khai giản đồ, dữ liệu và truy vấn lên đám mây. Bạn sẽ cần gói Blaze để thiết lập phiên bản Cloud SQL.
Chuyển đến mục Kết nối dữ liệu trên bảng điều khiển của Firebase rồi tạo bản dùng thử Cloud SQL miễn phí.
Trong Terminal được tích hợp Mã VS, hãy chạy firebase init dataconnect và chọn Khu vực/Mã dịch vụ mà bạn vừa tạo trên bảng điều khiển.
Chọn "Y" khi được nhắc "File dataconnect/dataconnect.yaml already exists, Overwrite?" (Tệp dataconnect/dataconnect.yaml đã tồn tại, Ghi đè?).
Trong giao diện người dùng của Tiện ích Data Connect cho VS Code, hãy nhấp vào nút Deploy to production (Triển khai lên môi trường thực tế).
Sau khi triển khai, hãy chuyển đến bảng điều khiển Firebase để xác minh giản đồ, thao tác và dữ liệu đã được tải lên đám mây. Bạn cũng có thể xem giản đồ và chạy các thao tác trên bảng điều khiển. Phiên bản Cloud SQL cho thực thể PostgreSQL sẽ được cập nhật với phiên bản cuối cùng đã triển khai giản đồ và dữ liệu tạo ra.
Các bước tiếp theo
Xem lại dự án đã triển khai của bạn và khám phá các công cụ khác:
- Thêm dữ liệu vào cơ sở dữ liệu, kiểm tra và sửa đổi giản đồ, đồng thời theo dõi dịch vụ Data Connect trong bảng điều khiển Firebase.
Xem thêm thông tin trong tài liệu. Ví dụ: vì bạn đã hoàn tất hướng dẫn nhanh:
- Tìm hiểu thêm về phát triển lược đồ, truy vấn và đột biến
- Tìm hiểu về cách tạo SDK ứng dụng và gọi truy vấn và đột biến từ mã ứng dụng cho web, Android, iOS và Flutter.