このドキュメントはAIによって翻訳されました。不正確な情報については、英語版をご参照ください
name - コレクション名stringtitle - コレクションのタイトルstringmigrationRules - マイグレーションルールMigrationRule[]inherits - コレクションの継承string[] | stringfilterTargetKey - フィルターターゲットキーstring | string[]fields - フィールド定義FieldOptions[][]model - カスタムモデルstring | ModelStatic<Model>repository - カスタムリポジトリstring | RepositoryTypeautoGenId - IDの自動生成booleantruetimestamps - タイムスタンプの有効化booleantruecreatedAt - 作成日時フィールドboolean | stringtrueupdatedAt - 更新日時フィールドboolean | stringtruedeletedAt - ソフトデリートフィールドboolean | stringfalseparanoid - ソフトデリートモードbooleanfalseunderscored - アンダースコア命名booleanfalseindexes - インデックス設定ModelIndexesOptions[]NocoBase は複数のフィールドタイプをサポートしており、すべてのフィールドは FieldOptions ユニオンタイプに基づいて定義されています。フィールド設定には、基本プロパティ、データタイプ固有のプロパティ、リレーションシッププロパティ、およびフロントエンドのレンダリングプロパティが含まれます。
すべてのフィールドタイプは BaseFieldOptions を継承しており、共通のフィールド設定機能を提供します。
例:
name - フィールド名stringhidden - 非表示フィールドbooleanfalsevalidation - バリデーションルールValidationOptions<T>allowNull - NULL値を許可booleantrueNULL 値の書き込みを許可するかどうかを制御します。defaultValue - デフォルト値anyunique - 一意制約boolean | stringfalseprimaryKey - 主キーbooleanfalseautoIncrement - 自動インクリメントbooleanfalsefield - データベースカラム名stringfield と同じです)。comment - データベースコメントstringtitle - 表示タイトルstringdescription - フィールドの説明stringinterface - インターフェースコンポーネントstringtype: 'string' - 文字列フィールドVARCHARlength: 文字列の長さ制限trim: 先頭と末尾の空白を自動的に削除するかどうか例:
type: 'text' - テキストフィールドTEXT、MEDIUMTEXT、LONGTEXTlength: MySQL のテキスト長タイプ(tiny/medium/long)例:
type: 'integer' - 整数フィールドINTEGER例:
type: 'bigInt' - BigInt フィールドinteger よりも広い範囲を扱えます。BIGINT例:
type: 'float' - 浮動小数点フィールドFLOATprecision: 精度(総桁数)scale: 小数点以下の桁数例:
type: 'double' - 倍精度浮動小数点フィールドfloat よりも高い精度を持ちます。DOUBLEprecision: 精度(総桁数)scale: 小数点以下の桁数例:
type: 'real' - 実数フィールドREALprecision: 精度(総桁数)scale: 小数点以下の桁数例:
type: 'decimal' - Decimal フィールドDECIMALprecision: 精度(総桁数)scale: 小数点以下の桁数例:
type: 'boolean' - ブールフィールドBOOLEAN または TINYINT(1)例:
type: 'radio' - ラジオフィールドBOOLEAN または TINYINT(1)例:
type: 'date' - 日付フィールドDATEtimezone: タイムゾーン情報を含むかどうか例:
type: 'time' - 時間フィールドTIMEtimezone: タイムゾーン情報を含むかどうか例:
type: 'datetimeTz' - タイムゾーン付き日時フィールドTIMESTAMP WITH TIME ZONEtimezone: タイムゾーン情報を含むかどうか例:
type: 'datetimeNoTz' - タイムゾーンなし日時フィールドTIMESTAMP または DATETIMEtimezone: タイムゾーン情報を含むかどうか例:
type: 'dateOnly' - 日付のみフィールドDATEtype: 'unixTimestamp' - Unix タイムスタンプフィールドBIGINTepoch: エポック時間例:
type: 'json' - JSON フィールドJSON または TEXTtype: 'jsonb' - JSONB フィールドJSONB(PostgreSQL)type: 'array' - 配列フィールドJSON または ARRAYdataType: ストレージタイプ(json/array)elementType: 要素タイプ(STRING/INTEGER/BOOLEAN/JSON)例:
type: 'set' - セットフィールドJSON または ARRAYdataType: ストレージタイプ(json/array)elementType: 要素タイプ(STRING/INTEGER/BOOLEAN/JSON)例:
type: 'uuid' - UUID フィールドUUID または VARCHAR(36)autoFill: 自動入力例:
type: 'nanoid' - Nanoid フィールドVARCHARsize: ID の長さcustomAlphabet: カスタム文字セットautoFill: 自動入力例:
type: 'uid' - カスタム UID フィールドVARCHARprefix: プレフィックスpattern: バリデーションパターン例:
type: 'snowflakeId' - Snowflake ID フィールドBIGINTtype: 'password' - パスワードフィールドVARCHARlength: ハッシュ長randomBytesSize: ランダムバイトサイズ例:
type: 'encryption' - 暗号化フィールドVARCHARtype: 'virtual' - 仮想フィールドtype: 'context' - コンテキストフィールドdataType に基づいて決定されます。dataIndex: データインデックスパスdataType: データタイプcreateOnly: 作成時のみ設定例:
type: 'belongsTo' - Belongs To リレーションシップtarget: ターゲットコレクション名foreignKey: 外部キーフィールド名targetKey: ターゲットコレクションのキーフィールド名onDelete: 削除時のカスケード操作onUpdate: 更新時のカスケード操作constraints: 外部キー制約を有効にするかどうか例:
type: 'hasOne' - Has One リレーションシップtarget: ターゲットコレクション名foreignKey: 外部キーフィールド名sourceKey: ソースコレクションのキーフィールド名onDelete: 削除時のカスケード操作onUpdate: 更新時のカスケード操作constraints: 外部キー制約を有効にするかどうか例:
type: 'hasMany' - Has Many リレーションシップtarget: ターゲットコレクション名foreignKey: 外部キーフィールド名sourceKey: ソースコレクションのキーフィールド名sortBy: ソートフィールドsortable: ソート可能かどうかonDelete: 削除時のカスケード操作onUpdate: 更新時のカスケード操作constraints: 外部キー制約を有効にするかどうか例:
type: 'belongsToMany' - Belongs To Many リレーションシップtarget: ターゲットコレクション名through: 中間テーブル名foreignKey: 外部キーフィールド名otherKey: 中間テーブルのもう一方の外部キーsourceKey: ソースコレクションのキーフィールド名targetKey: ターゲットコレクションのキーフィールド名onDelete: 削除時のカスケード操作onUpdate: 更新時のカスケード操作constraints: 外部キー制約を有効にするかどうか例: