連携ルール
はじめに
NocoBaseにおける連携ルールは、フロントエンドのUI要素のインタラクティブな動作を制 御するための仕組みです。これにより、ユーザーはさまざまな条件に基づいて、UI内のブロック、フィールド、およびアクションの表示や動作ロジックを調整し、柔軟でローコードなインタラクティブ体験を実現できます。この機能は、継続的に改善・最適化されています。
連携ルールを設定することで、以下のようなことが実現できます。
- 現在のユーザーロールに基づいて特定のブロックを非表示/表示する。例えば、管理者は完全な情報を含むブロックを表示し、一般ユーザーは基本的な情報ブロックのみを表示するなど、ロールによって表示されるデータの範囲が異なるブロックを設定できます。
- フォームで特定のオプションが選択されたときに、他のフィールド値を自動入力またはリセットする。
- フォームで特定のオプションが選択されたときに、特定の入力項目を無効にする。
- フォームで特定のオプションが選択されたときに、特定の入力項目を必須にする。
- 特定の条件でアクションボタンの表示/非表示やクリック可否を制御する。
条件設定

左側の変数
条件の左側の変数は、連携ルールにおける「判断の対象」を定義するために使用されます。この変数の値に基づいて条件が評価され、連携アクションをトリガーするかどうかが決定されます。
選択可能な変数には、以下が含まれます。
- 「現在のフォーム/xxx」、「現在のレコード/xxx」、「現在のポップアップレコード/xxx」などのコンテキスト内のフィールド。
- 「現在のユーザー」、「現在のロール」などのシステムグローバル変数。これらは、ユーザーのIDや権限などの情報に基づいて動的に制御する場合に適しています。
✅ 左側の変数で選択できる項目は、ブロックが配置されているコンテキストによって決まります。ビジネス要件に応じて、左側の変数を適切に使用してください。
- 「現在のユーザー」は、現在ログインしているユーザーの情報を表します。
- 「現在のフォーム」は、フォームにリアルタイムで入力されている値を表します。
- 「現在のレコード」は、テーブルの行レコードなど、保存されているレコード値を表します。
演算子
演算子は、条件判断のロジック、つまり左側の変数と右側の値をどのように比較するかを設定するために使用されます。左側の変数のタイプによってサポートされる演算子は異なり、一般的な演算子は以下のとおりです。
- テキストタイプ:
$includes、$eq、$ne、$empty、$notEmptyなど - 数値タイプ:
$eq、$gt、$lt、$gte、$lteなど - ブールタイプ:
$isTruly、$isFalsy - 配列タイプ:
$match、$anyOf、$empty、$notEmpty

