Using Fragments
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

フォームフラグメントの使用

Liferay DXP 2023.Q3+/Portal GA92+

Liferayには、コンテンツページにフォームを作成するためのフォームフラグメントが含まれています。 フォームを作成するには、コンテンツページまたはページテンプレートにフォームコンテナを追加し、それを公開済みオブジェクトにマッピングします。 コンテナは、各オブジェクトフィールドにマッピングされたフラグメントを自動的に生成します。 フラグメントの整理、削除、追加は手動で行うことができます。 公開後、エンドユーザーはフォームを使用してオブジェクトエントリを作成できるようになります。

フォームの断片を異なるセクションに追加し、ナビゲーションボタンを使用してユーザーを各ステップに誘導することで、複数のステップを持つフォームを作成することもできます。 フラグメントを使用して複数ステップのフォームを構築するを参照してください。

コンテンツページにフォームを作成するには、

  • カスタムオブジェクトを作成します。
  • コンテンツページにフォームコンテナフラグメントを追加します。
  • フォームコンテナフラグメントをカスタムオブジェクトにマッピングします。
  • フォームフラグメントは、マッピングされたフォームコンテナ内にのみ配置してください。
  • データ損失を防ぐため、フォーム内のすべてのフォームフラグメントをオブジェクトフィールドにマッピングしてください。
  • 必須オブジェクトフィールドすべてについて、フォームコンテナ内にフラグメントを含める。
  • 必須項目であるフォームの断片を表示する。
  • フォームコンテナ内に、目立つ送信ボタンを含めてください。

オブジェクトをフォームコンテナフラグメントにマッピングすると、送信ボタンが生成されます。 マッピング設定 を使用してテキストをマッピングできます。

リダイレクト用のリンク設定を持つボタンを作成するには、ボタンの断片にtype="button"

デフォルトでは、Liferay には フォーム コンポーネント フラグメント セットが含まれていますが、独自のものを作成することもできます。 詳細については、 フォームフラグメントの作成 を参照してください。

さらに、フォームフラグメントは カスタムオブジェクト でのみ使用できます。 そのため、Liferayは少なくとも1つの公開オブジェクトが作成されるまで、フォームコンポーネントのフラグメントセットを非表示にします。 公開後、オブジェクトへのアクセス権を持つユーザーは、フォームコンポーネントのフラグメントを表示および使用できるようになります。

フォームフラグメントの完全なリストについては、 デフォルトフラグメントリファレンス を参照してください。

フォームコンポーネントでサポートされているフィールドタイプ

各フォームフラグメントは、1つ以上のオブジェクトフィールドタイプをサポートできます。 デフォルトのフォームコンポーネントはこれらのフィールドをサポートしています。

フォームフラグメントオブジェクト項目タイプ
キャプチャ該当なし
チェックボックスブール値
日付日付
ファイルアップロード添付ファイル
複数選択リスト複数選択リスト
数値入力整数、長整数、小数、高精度小数
リッチテキストリッチテキスト
プルダウン関係、選択リスト
送信ボタン該当なし
テキスト入力テキスト、長文
テキストエリアテキスト、長文
ヒント

オブジェクトに対してカテゴリ分類が有効になっている場合、タグとカテゴリのフォームフラグメントを使用して、オブジェクトエントリにメタデータを追加できます。

フォームフラグメントの交換

Liferay 2026.Q1+

フォームコンテナ内でフォームを作成する場合、新しいフラグメントが元のフラグメントと同じオブジェクトフィールドタイプをサポートしている限り、フィールドマッピングを失うことなくフラグメントを置き換えることができます。

  1. フォームコンテナ内のフォームフラグメントを選択します。

  2. 右側のメニューで、 フラグメントの交換 (Swap Fragment icon) をクリックします。

    または、フラグメントの アクション (Actions menu) メニューを開き、 フラグメントの交換 を選択します。

    「フラグメントの交換」アクションを使用してフォームフラグメントを置き換えます。

  3. 互換性のあるフラグメントを見つけて選択します。

    現在のフラグメントを置き換える互換性のあるフラグメントを選択してください。

フラグメント互換性の例:

  • 複数選択ドロップダウンと複数選択チェックボックスを、複数選択ピックリストフィールドにマッピングした場合に、入れ替えます。
  • テキストフィールドにマッピングされた場合、テキスト入力とテキストエリアを入れ替えます。
  • 数値入力フラグメントを数値フィールドにマッピングする際に、それらを入れ替える。

新しいフラグメントがマッピングされたフィールドタイプをサポートしていない場合、Liferay はマッピングをクリアするため、再度設定する必要があります。