logologo
スタート
マニュアル
開発
プラグイン
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
スタート
マニュアル
開発
プラグイン
API
logologo
概要

ブロック

概要

データブロック

テーブル
フォーム
詳細
リスト
グリッドカード
チャート

フィルターブロック

フォーム

その他のブロック

操作パネル
Iframe
参照ブロック
Markdown
JSブロック

ブロック設定

データ範囲
レイアウト
ブロック連携ルール
フィールド連携ルール
並び替えルール
ブロック削除
ブロックタイトル

フィールド

概要

共通設定

テーブルフィールド
詳細フィールド
フィルターフォームフィールド
フォームフィールド

固有設定

日付
ファイルマネージャー
サブフォーム
ドロップダウン
データセレクター
カスケードセレクター
サブテーブル
サブ詳細
タイトル
JSフィールド
JSアイテム
JSカラム

フィールド設定

デフォルト値
フィールドラベル
ラベル表示
フィールドヒント
データ範囲
フィールドコンポーネント
数値フォーマット
モード
必須
タイトルフィールド
バリデーションルール
関連フィールドコンポーネント

アクション

概要

アクション設定

編集ボタン
再確認
フィールド割り当て
ワークフロー連携
編集ダイアログ
アクション連携ルール

アクションタイプ

新規作成
表示
削除
編集
インポート
インポートPro
エクスポート
エクスポートPro
添付ファイルのエクスポート
フィルター
リンク
ポップアップを開く
リフレッシュ
データ送信
ワークフロー実行
レコード更新
一括更新
サブレコード追加
JSアクション
アクション権限

高度な設定

連携ルール
イベントフロー
変数
RunJS
Previous PageJSカラム
Next Pageフィールドラベル
TIP

このドキュメントはAIによって翻訳されました。不正確な情報については、英語版をご参照ください

#デフォルト値

#はじめに

「デフォルト値」とは、新しいレコードを作成する際のフィールドの初期値のことです。コレクション(データ表)でフィールドを設定する際にデフォルト値を設定したり、「新規追加フォーム」ブロック内のフィールドにデフォルト値を指定したりできます。設定は定数または変数として行えます。

#デフォルト値はどこで設定できますか?

#コレクションのフィールド

20240411095933

#新規追加フォームのフィールド

新規追加フォームのほとんどのフィールドで、デフォルト値を設定できます。

20251028161801

#サブフォームでの追加

新規追加フォームまたは編集フォーム内のサブフォームフィールドを介して追加されたサブデータには、デフォルト値が適用されます。

サブフォームでの新規追加 20251028163455

既存データを編集する場合、空のフィールドにデフォルト値が自動的に入力されることはありません。デフォルト値が適用されるのは、新しく追加されたデータのみです。

#関連フィールドのデフォルト値

デフォルト値が設定できるのは、「多対一」および「多対多」タイプの関連で、かつセレクターコンポーネント(Select、RecordPicker)を使用している場合に限られます。

20251028164128

#デフォルト値変数

#利用可能な変数

  • 現在のユーザー
  • 現在のレコード(既存のレコードにのみ適用されます)
  • 現在のフォーム(理想的にはフォーム内のフィールドのみがリストされます)
  • 現在のオブジェクト(サブフォーム内の概念で、サブフォームの各行のデータオブジェクトを指します)
  • URLパラメーター 変数の詳細については、変数 を参照してください。

#フィールドのデフォルト値変数

関連フィールドと非関連フィールドの2つのカテゴリに分けられます。

#関連フィールドのデフォルト値変数

  • 変数オブジェクトはコレクションのレコードである必要があります。
  • 継承チェーン内のコレクションである必要があり、現在のコレクションまたは親/子コレクションのいずれかです。
  • 「テーブルで選択されたレコード」変数は、「多対多」および「一対多/多対一」の関連フィールドでのみ利用可能です。
  • 多階層の場合、フラット化して重複を排除する必要があります。
// テーブルで選択されたレコード:
[{id:1},{id:2},{id:3},{id:4}]

// テーブルで選択されたレコード/toOne:
[{toOne: {id:2}}, {toOne: {id:3}}, {toOne: {id:3}}]
// フラット化して重複を排除
[{id: 2}, {id: 3}]

// テーブルで選択されたレコード/toMany:
[{toMany: [{id: 1}, {id:2}]}, {toMany: {[id:3}, {id:4}]}]
// フラット化
[{id:1},{id:2},{id:3},{id:4}]

#非関連フィールドのデフォルト値変数

  • 型は一貫しているか、互換性がある必要があります。例えば、文字列は数値と互換性があり、toStringメソッドを提供するすべてのオブジェクトも同様です。
  • JSONフィールドは特殊で、あらゆる種類のデータを保存できます。

#フィールドレベル(オプションフィールド)

20240411101157

  • 非関連フィールドのデフォルト値変数

    • 多階層のフィールドを選択する場合、一対一の関連に限定され、多対多の関連はサポートされません。
    • JSONフィールドは特殊で、制限なく設定できます。
  • 関連フィールドのデフォルト値変数

    • hasOne は一対一の関連のみをサポートします。
    • hasMany は一対一(内部変換)と多対多の両方をサポートします。
    • belongsToMany は一対一(内部変換)と多対多の両方をサポートします。
    • belongsTo は通常一対一ですが、親の関連が hasMany の場合は多対多もサポートします(hasMany/belongsTo は実質的に多対多の関連であるため)。

#特殊なケース

#「多対多」は「一対多/多対一」の組み合わせと同等です

モデル

20240411101558

#なぜ一対一と一対多の関連にはデフォルト値がないのですか?

例えば、AとBの関連において、b1がa1に関連付けられている場合、b1はa2に関連付けられることはできません。もしb1がa2に関連付けられると、a1との関連は解除されます。このような場合、データは共有されません。一方、デフォルト値は(すべてが関連付けられる)共有メカニズムであるため、一対一および一対多の関連にはデフォルト値を設定できません。

#なぜ多対一および多対多のサブフォームやサブテーブルにはデフォルト値がないのですか?

サブフォームやサブテーブルは、関連データを直接編集すること(追加や削除を含む)に重点を置いています。一方、関連のデフォルト値は共有メカニズムであり、すべてが関連付けられることはできますが、関連データを変更することはできません。そのため、このシナリオではデフォルト値を提供することは適切ではありません。

さらに、サブフォームやサブテーブルにはサブフィールドがあり、サブフォームやサブテーブルのデフォルト値が「行のデフォルト値」なのか「列のデフォルト値」なのかが不明確になります。

これらの要因を総合的に考慮すると、関連の種類に関わらず、サブフォームやサブテーブルに直接デフォルト値を設定できない方が適切です。