メインコンテンツまでスキップ
バージョン: 0.5.0 (最新)

💾 データベースドライバー

データベースドライバーは、NodeBlocksアプリケーションでのデータ永続化のための統一されたインターフェースを提供します。データベース接続と操作を抽象化し、ビジネスロジックを変更することなく異なるデータベースを使用できるようにします。


🎯 概要

NodeBlocksのデータベースドライバーは、設定済みのデータベースインスタンスを作成するファクトリ関数です。これらは以下を提供します:

  • 異なるデータベースタイプ間の統一されたインターフェース
  • 接続文字列とデータベース名によるシンプルな設定
  • カスタムデータベースアダプタのための柔軟な実装

📋 利用可能なデータベースドライバー

MongoDBドライバー

MongoDBドライバーは、NodeBlocksサービスで使用するための設定済みMongoDBデータベースインスタンスを作成します。

getMongoClient

指定された接続URLとデータベース名でMongoDBデータベースインスタンスを作成します。

パラメータ:

  • url: string - MongoDB接続文字列(例: mongodb://localhost:27017
  • dbName: string - 接続するデータベース名

戻り値: Db - MongoDBデータベースインスタンス

使用法:

import { getMongoClient } from '@nodeblocks/backend-sdk/drivers';

const client = getMongoClient('mongodb://localhost:27017', 'dev');
const usersCollection = client.collection('users');

環境変数を使用した例:

import { getMongoClient } from '@nodeblocks/backend-sdk/drivers';

const client = getMongoClient(
process.env.MONGODB_URL || 'mongodb://localhost:27017',
process.env.DB_NAME || 'dev'
);

🔧 データベースドライバーの使用

サービスとの使用

データストアパラメータを通じてサービスにデータベースコレクションを渡します:

import { services } from '@nodeblocks/backend-sdk';
import { getMongoClient } from '@nodeblocks/backend-sdk/drivers';

const client = getMongoClient('mongodb://localhost:27017', 'dev');

express()
.use(
services.userService(
{
users: client.collection('users'),
identity: client.collection('identity'),
},
{
authSecrets: {
authEncSecret: 'your-encryption-secret',
authSignSecret: 'your-signing-secret',
},
}
)
)
.listen(8089);

🔗 関連ドキュメント