Core · プラグインを使う

データベースブラウザー

機能

@nocobase/app-plugin-database-explorer は、設定された接続、コレクション、フィールド、物理的なスキーマを調べます。開発と診断に役立ち、テーブルの編集や業務レコードの編集の操作は公開しません。

プラグインは照会の API とクライアントを提供し、ブラウザーの画面はアプリが組み立てます。

シナリオと例

例:注文のテーブルを調べる

  1. 注文が使う接続を選びます。
  2. コレクションのフィールド、リレーション、警告を調べます。
  3. その物理的なスキーマを開き、列とインデックスを調べます。
  4. 必要な変更は マイグレーション で行います。

ページ分けされた一覧では pageToken をたどります。DatabaseExplorerClient.allCollections() は、アプリ側の検索のためにページをたどり、たどる上限に達すると truncated を報告します。

開発用のプロンプト(アプリのディレクトリで作業するコーディングエージェント向け):

プレーンテキスト
Database Explorer を使って、管理者向けのスキーマの閲覧ページを追加してください。
接続、コレクション、必要に応じた物理的なスキーマには DatabaseExplorerClient と
DATABASE_EXPLORER_ACCESS を再利用してください。ページネーションに対応し、切り詰めを表示してください。
スキーマやレコードの編集は追加しないでください。アクセスの拒否、利用できない接続、
存在しないコレクションをテストしてください。

完了の条件認可された管理者が論理的なスキーマと物理的なスキーマを調べられ、拒否されたユーザーは API を照会できないこと。

主な仕組みと実装

以下は、この例での組み込みの領域と、想定される画面の変化です。開発作業を記述したもので、実際のファイル構成はアプリに合わせてください。

組み込みの領域コードまたは設定の変更画面と動作の変化
クライアントのルートとブラウザーのページ接続、コレクション、物理的なスキーマのリクエストを組み立てる必要に応じたスキーマの閲覧を追加する
ページの認可DATABASE_EXPLORER_ACCESS を再利用するナビゲーションと API のアクセスをそろえる
ページネーションとエラーの状態pageToken、truncated、失敗を扱う部分的な結果や失敗した結果を完全なものとして表示しない

組み込み

両方のランタイムを Authentication と Authorization のあとに登録します。アプリは DatabaseExplorerClient を使ってページを作ります。プラグインは API を提供するだけで、ページや業務のテーブルのマイグレーションはありません。

ページと API は page:database-explorer/access を共有します。クライアントでは、エクスポートされた DATABASE_EXPLORER_ACCESS を再利用します。

構造を閲覧する

照会エンドポイント
接続GET /api/databaseExplorer/connections
コレクションGET /api/databaseExplorer/connections/:connection/collections
定義とフィールドGET /api/databaseExplorer/connections/:connection/collections/:collection
物理的な列、インデックス、制約コレクションのエンドポイントに /physicalSchema を付ける

接続の概要には、名前、ダイアレクト、管理のモードが含まれ、パスワード、ホスト、データベースのファイルのパスは含まれません。定義と物理的なスキーマは別々のリクエストです。

AI 開発の制約と検証

プラグイン固有の開発の制約

  • スキーマの閲覧は読み取り専用に保ってください。スキーマの変更には引き続きマイグレーションを使います。
  • 接続の概要に、ホスト、パスワード、データベースのパスの開示を追加しないでください。
  • 最初のページをすべてのコレクションとして扱うのではなく、ページをまたぐ検索、たどる上限、アクセスの拒否をテストしてください。

境界

プラグインには書き込みのエンドポイントがありませんが、データベースのフレームワークが、管理対象の接続のコレクションを初めて読み取るときに、内部のメタデータとキャッシュのバージョンのテーブルを初期化することがあります。業務のテーブルと行は変わりません。外部の接続は、ディレクトリに置いたメタデータを使います。

認可されたアクセスと拒否されたアクセス、利用できない接続、存在しないコレクション、ページネーションを検証します。エラーの取り決めは、動作中のアプリの API ドキュメントを参照してください。

関連:データベースの接続、権限管理、プラグインを管理する。

これらはあなたの組み込みの検収の要件であり、実機での検証が完了したことを示すものではありません。実際の変更、実行したチェック、未検証の項目をエージェントに報告させてください。プロジェクトのガイダンス、スキル、共通のチェックについては アプリの開発を続ける と テスト を参照してください。

出典:公開のプラグインの入口と実装。

NocoBase ドキュメントアシスタント

NocoBase について何を知りたいですか?

質問は個別に回答され、過去の質問や回答は参照されません。必要な背景をすべて含めてください。