oo

フォームルールの概要

フォームは、1つの質問に対する回答でフォームの残りの部分が変化するような、動的なものにすることができます。 1つの回答で次の3つの質問をスキップできる場合や、追加の質問に答えなければならない場合などが考えられます。 このようなフィールドは、 条件付きフィールド と呼ばれます。 どのフィールドを条件付きにするかを決めたら、フォームルールを使って、その質問に対する回答に基づいて次のアクションを決定します(例えば、複数ページのフォームでは、3ページ目をスキップして4ページ目に進むなど)。

Liferay 7.4以降では、 フォームフィールド は非表示にすることも可能です。 つまり、データプロバイダーが非表示フィールドにデータを入力し、その非表示フィールドをルールで使用して動的にフォームを変更できるのです。

フォームルールの条件とアクション

ルールには2つの要素があります。

  • 条件 は、アクションが実行されるかどうかを決定します。
  • アクション は、条件を満たした場合の動作を決定します。
note

ルールはデフォルトではJSON形式でデータベースに保存されます。

ユーザーは OR または AND を選択して、複数の条件の間の関係を定義することができます。

  • OR : 指定した条件の いずれかtrue と評価された場合、アクションがトリガーされます。
  • AND : 指定した すべて の条件が true と評価された場合にのみ、アクションがトリガーされます。

ORとANDを使って、アクションの条件を定義します。

ルールビルダーへのアクセス

  1. フォームルールを適用するフォームに移動します。

  2. Rules] タブをクリックします。

    [Rules]タブをクリックします。

  3. 追加 ボタン(Add)をクリックして開始します。

条件の指定

ルールを構築する際には、フィールド(例えば、 あなたは18才以上ですか?)、条件(と等しい)、比較する値(はい/いいえ)を指定する必要があります。 条件の ifステートメントtrue であれば、アクションがトリガーされます。 false の場合は何も起こりません。

条件 説明
が以下と等しい 入力された値が条件と一致するかどうかをチェックします。 例:言語がスペイン語と一致した場合、アクションをトリガーします。
等しくない 入力された値が条件と一致していないかどうかをチェックします。
が以下を含む 入力された値が、その値を含んでいるかどうかをチェックします。
含まない 入力された値が、その値を含んでいないかどうかをチェックします。
が空の場合 フィールド が空で ある かどうかをチェックします。
は空ではありません フィールドが空 でない 限り、アクションを実行します。
ユーザー ユーザーが特定のロールに所属しているかどうかを確認します。 Yesの場合、アクションがトリガーされます。

フォームルールアクション

次のアクションを使用できます。

次のアクションを使用できます。

操作 説明
以下を表示する: あらかじめ定義された条件に基づいて、フォームフィールドの可視性を設定します。
有効にする 定義済みの条件を使用して、フィールドを有効または無効にします。
必須 定義済みの条件を使用して、フィールドを必須にします。
ページへ移動 ユーザーの入力内容に応じて、一部のフォームページをスキップして関連するページに直接移動します。 このルールは、2番目のページがフォームに追加されるまで、ルールビルダーに表示されません
データプロバイダーによる自動入力 データプロバイダーを使用して、別のフィールドで条件が満たされたときにフィールドに値を入力します。
計算 他のフィールドに入力されたデータを使って、フィールドに計算値を入力します。

関連トピック

Capability:
Feature: