レンダリングバリアントでのModelReferenceフィールドレンダラーの使用
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
SXAには、デフォルトのレンダリングと レンダリング バリアント ( Referenceフィールド レンダラーとModelフィールド レンダラーを含む) のセットが付属しています。ただし、型コレクションのモデル プロパティを処理するには、ModelReferenceフィールド レンダラーを使用する必要があります。
ModelReferenceフィールドレンダラーは、レンダリングモデル内の指定されたコレクションを反復処理し、追加のモデルフィールドレンダラーをサブアイテムとして使用してデータを抽出できるようにします。コレクションは、アイテムのPass through fieldフィールドで指定します。対象とするモデル コレクション プロパティは、IEnumerableインターフェイスを実装する必要があります。
任意の標準フィールド レンダラーを、ModelReferenceフィールド レンダラーの下にネストして使用できます。また、ModelReferenceフィールド レンダラーをネストして、複数のレベルのネストされたオブジェクト (階層) を持つモデル内のターゲット コレクション プロパティにすることもできます。
次のクラス図は、ModelReferenceフィールド レンダラーの使用方法の例を示しています。この図には、ModelReferenceレンダラーを使用して製品バンドル コンポーネントの既定のレンダリング バリアントを反復処理するための4つのネストされたコレクションがあります。
-
ProductBundleRenderingModelは、LineItemsコレクションを反復処理します。
-
ProductVariantクラスは、VariantSelectionsコレクションを反復処理します。
-
BundleVariantsReferenceは、ValidProductVariantsコレクションを反復処理します。
-
Optionsクラスは、Optionsコレクションを反復処理します。
-
BundleValueVariantsReferenceは、Variantsコレクションを反復処理します。
製品バンドルの実装の詳細については、製品バンドルの構造を参照してください。
ModelReferenceレンダラーを使用するには、コレクション プロパティを使用してレンダリング モデル クラスを作成する必要があります。モデル・クラスは、VariantsRenderingModel.
構成
構成
ModelReferenceフィールド レンダラーをSitecore.Commerce.XA.Foundation.Common.config設定ファイルに登録するには、次のコード スニペットを使用します。