XataとAstro
Xataは、リレーショナルデータベース、検索エンジン、分析エンジンの機能を組み合わせたサーバーレスデータプラットフォームで、一貫したREST APIを公開します。
Xataを使ったデータベースの追加
開発環境の準備
- Xataのアカウントとデータベースの作成(Web UIからサンプルデータベースを使用できます)
- アクセストークン(
XATA_TOKEN_API
) - データベースのURL
Xata CLIを更新して初期化した後、.env
ファイルにAPIトークンがあり、データベースのURLが定義されていることを確認します。
上記確認後、以下のようなファイルがあるはずです。:
databaseURL
が定義されていることを確認します。:
環境設定
環境変数にインテリセンスと型安全性を持たせるには、src/
ディレクトリのenv.d.ts
ファイルを編集、または作成します。:
Xata CLIのcodegenerationを使用し、TypeScriptオプションを選択すると、データベーススキーマに合わせた型を持つSDKのインスタンスが生成されます。また、@xata.io/client
がpackage.json
に追加されます。
Xataの環境変数とデータベースURLは、SDKインスタンスによって自動的に取得されるため、これ以上のセットアップ作業は必要ありません。
ここまでで、プロジェクトの構造は以下のようになります。:
ディレクトリsrc/
- xata.codegen.ts
- env.d.ts
- .env
- astro.config.mjs
- package.json
- .xatarc
クエリ作成
ブログ記事(Posts)をクエリするには、.astro
ファイルでgetXataClient()
をインポートして使用します。以下の例では、Xataのサンプルブログデータベースから最初の50件の記事をクエリしています。
スキーマが変更されるたびにSDKを再生成する必要があります。Xata CLIが作成する生成ファイルを変更しないでください。スキーマが更新されると、変更内容が上書きされるためです。