Documentation

Documentation Menu
Go Back

カスタムバリデーションの追加

利用可能な Liferay 7.4 U27+/GA27+

バリデーションは、有効なフィールドエントリを決定するためのルールを設定します。 各バリデーションには、独自のトリガー、条件、エラーテキストがあり、オブジェクトUIから設定することができます。 Groovyスクリプト または Liferay式 を使ってバリデーションを定義することができます。

カスタムおよびシステムオブジェクトフィールドのバリデーションを作成します。

重要

Groovy スクリプトの検証は、Liferay Experience Cloud Self-Managed と Liferay DXP Self-Hosted でのみ利用可能です。

以下の手順で、バリデーションを追加します。

  1. グローバルメニュー( Global Menu ) を開き、 コントロールパネル タブを開き、 オブジェクト をクリックします。

  2. オブジェクト定義の編集を開始します。

    注釈

    Liferay 7.4 U38+/GA38+ では、システムオブジェクトにカスタムバリデーションを追加することができます。

  3. Validations タブを開き、 Add( Add Button ) をクリックします。

  4. ラベル を入力し、バリデーションタイプ、つまり Groovy または 式ビルダー を選択します。

    ラベルを入力し、入力値の検証タイプを選択します。

  5. Save] をクリックします。

  6. 新しく作成したバリデーションの編集を開始します。

  7. Conditions] タブに移動して、バリデーションに条件を追加します。

    バリデーションに条件を追加します。

    Groovyを使用する場合、サイドパネルから利用可能なデータフィールドを参照し、条件に追加することができます。 詳細は、 Groovyバリデーションの使用 を参照してください。

    式ビルダーを使用する場合、サイドパネルからフィールド、演算子、関数を参照し、条件に追加できます。 詳細は、 式ビルダーバリデーションの使用 を参照してください。

    Tip

    条件には、複雑な検証をするための複数のフィールドや関数を含めることができます。

  8. ローカライズ可能な エラーメッセージを入力します 。 このメッセージは、バリデーションが開始され、フィールドの入力が1つ以上の定義された条件を満たさない場合に表示されます。

  9. Basic Info] タブを開き、バリデーションを 有効に します。

  10. Trigger Event を選択し、検証の実行タイミングを決定します。

    各検証は、1つのトリガーイベントしか持つことができません。

    バリデーションを有効にし、トリガーイベントを設定します。

  11. Save] をクリックします。

一度有効にすると、すべての新規オブジェクトの入力に対して検証が実行されます。

Groovyバリデーションの使用

Groovy の検証は、標準的な Groovy Script の機能をすべてサポートしています。 条件を定義する場合、 invalidFields 変数を使用する必要があります。 LiferayはinvalidFieldstrueを返す場合にのみ、確認エラーメッセージを表示します。

サイドパネルを使用して、Groovyバリデーションにフィールド要素を追加します。

Liferay 7.4 U33+とGA33+では、Liferayは GroovyShellクラス を使って、 [保存] をクリックしたときにGroovy スクリプトの構文が有効であるかどうかをチェックします。 スクリプトが無効な場合、Liferayはエラーメッセージを表示します。

式ビルダーバリデーションの使用

Expression Builderには、定義済みのフィールド、演算子、関数が用意されており、Elementsサイドパネルからアクセスすることができます。 要素をクリックすると、その要素が条件エディタに追加されます。 これらの関数は、ブール値を返します。 提供される演算子や関数の完全なリストについては、 式ビルダーバリデーションのリファレンス を参照してください。

重要

Expression Builderの検証は、テキスト、数値、日付、およびブーリアンフィールドタイプにのみ使用できます。

サイドパネルを使用して、フィールド、演算子、関数の要素をバリデーションに追加します。

Liferay 7.4 U33+ と GA33+ では、Liferay は Save をクリックしたときに、式が有効な構文かどうかをチェックします。 式が無効な場合、Liferayはエラーメッセージを表示します。

式ビルダーの演算子

この表は、Expression Builderの検証で利用できる演算子の一覧です。

演算子

説明

And ( AND )

依存した関係を表すのに使用される等位接続詞

Divided By ( / )

除算の数学演算子

Minus ( - )

除算の数学演算子

Or ( OR )

独立した関係を表すのに使用される等位接続詞

Plus ( + )

加算の数学演算子

Multiply ( * )

乗算の数学演算子

式ビルダーの関数

この表は、利用可能なExpression Builder関数とその互換性のあるフィールドタイプの一覧です。

演算子

テキストフィールド

数値フィールド

日付フィールド

日付を比較

連結

条件

が以下を含む

含まない

未来の日付

URL である

Is an Email

小数である

が空の場合

が以下と等しい

以上

Is Greater Than or Equal To

整数である

以下

Is Less Than or Equal To

等しくない

一致

過去の日付

範囲

合計

利用可能なフィールドのリファレンス

7.4 U41+/GA41+ 用

条件を構成する際には、オブジェクトのカスタムフィールドやシステムフィールドのいずれかを使用することができます。 また、1対多のリレーションの子側のリレーションシップフィールドから選択することも可能です。

以下は、カスタムオブジェクトで利用可能なすべてのデフォルトフィールドです。

項目

説明

companyId

エントリーが作成されたポータルインスタンス

createDate

エントリーが作成された日時

externalReferenceCode

エントリーの外部参照コード

groupId

エントリーが作成されたサイトID

lastPublishDate

エントリーが最後に公開された日付

modifiedDate

エントリーが最後に更新された日付

mvccVersion

エントリーのMVCCバージョン

objectDefinitionId

エントリーのオブジェクトのID

objectEntryId

エントリーのID

status

エントリーのワークフローステータス

statusByUserId

ワークフローで割り当てられたユーザーのID

statusByUserName

ワークフローで割り当てられたユーザーの名前

statusDate

ワークフローステータスが最後に更新された日付

userId

エントリー作成者のID

userName

エントリー作成者のユーザー名

uuid

エントリーの重複しないユニバーサルID

システムオブジェクトは、上記の表と重複する部分もありますが、独自のデフォルトフィールドを持っています。

追加情報