Entities モジュール
データモデルの CRUD 操作。base44.entities.EntityName.method() 経由でアクセスします。
目次
- メソッド
- 例 (Create、Bulk Create、List、Filter、Get、Update、Delete、Subscribe)
- User エンティティ
- サービスロールアクセス
- 権限
メソッド
注意:list() と filter() の最大制限はリクエストごとに 5,000 アイテムです。
| メソッド | シグネチャ | 説明 |
|---|---|---|
create(data) | Promise<T> | 1 つのレコードを作成 |
bulkCreate(dataArray) | Promise<T[]> | 複数のレコードを作成 |
list(sort?, limit?, skip?, fields?) | Promise<Pick<T, K>[]> | すべてのレコードを取得 (ページ分割) |
filter(query, sort?, limit?, skip?, fields?) | Promise<Pick<T, K>[]> | 条件に一致するレコードを取得 |
get(id) | Promise<T> | ID で単一レコードを取得 |
update(id, data) | Promise<T> | レコードを更新 (部分更新) |
updateMany(query, data) | Promise<UpdateManyResult> | MongoDB 更新演算子を使って一致するすべてのレコードを更新 |
bulkUpdate(dataArray) | Promise<T[]> | ID で複数のレコードを更新、それぞれに独自のデータ |
delete(id) | Promise<DeleteResult> | ID でレコードを削除 |
deleteMany(query) | Promise<DeleteManyResult> | 一致するすべてのレコードを削除 |
importEntities(file) | Promise<ImportResult<T>> | CSV からインポート (フロントエンドのみ) |
subscribe(callback) | () => void | リアルタイム更新をサブスクライブ (unsubscribe 関数を返す) |
例
作成
一括作成
ページ分割付きリスト
フィルター
ID で取得
更新
削除
Update Many (MongoDB スタイル)
一括更新 (ID で)
ファイルからインポート
リアルタイム更新のサブスクライブ
User エンティティ
すべてのアプリには特別なルールを持つ組み込みのUser エンティティがあります:
- 通常のユーザーは 自分自身の レコードのみを読み取り/更新可能
entities.create()経由でユーザーを作成することはできません - 代わりにauth.register()を使用- サービスロールはすべてのユーザーレコードにフルアクセス可能
サービスロールアクセス
管理者レベルの操作 (ユーザー権限をバイパス):権限 (RLS と FLS)
データアクセスは、エンティティスキーマで定義された 行レベルセキュリティ (RLS) と フィールドレベルセキュリティ (FLS) ルールによって制御されます。- 認証レベル: 匿名、認証済み、またはサービスロール
- RLS ルール: ユーザーがどのレコード (行) を作成/読み取り/更新/削除できるかを制御
- FLS ルール: アクセス可能なレコード内でユーザーがどのフィールドを読み取り/書き込みできるかを制御
base44/entities/*.jsonc) で構成されます。構成の詳細については、entities-create.md を参照してください。
注意: asServiceRole はユーザーのロールを "admin" に設定しますが、RLS をバイパスしません。サービスロール操作が成功するには、RLS ルールに管理者アクセス (例: { "user_condition": { "role": "admin" } }) を含める必要があります。
型定義
RealtimeEvent
結果の型
SortField とサーバーフィールド
型レジストリ (型付きエンティティ用)
型付きエンティティの取得方法: Base44 CLI はプロジェクトからエンティティインターフェースとEntityTypeRegistry の拡張を生成できます。実行方法については、base44-cli スキルを使用してください。
EntityHandler
EntitiesModule
このページは AI を使用して翻訳されました。最も正確で最新の情報については、英語版 を参照してください。

