モデルの概要 models-overview

NOTE
単一ページアプリケーションフレームワークを基にしたクライアントサイドレンダリング(React など)が必要なプロジェクトでは、SPA エディターを使用することをお勧めします。詳細情報

モデル管理には、最終的なデータオブジェクトに関連付けるためのモデルの作成と管理が含まれます。 各モデルには、オブジェクトの作成とレンダリングを容易にするために必要なすべてのプロパティとフィールド定義が含まれています。

モデル管理には、modelsentitiesspaces の作成が含まれます。 次の図は、AEM コンテンツとモデルの間の関係を示しています。

chlimage_1-81

コンテンツモデル the-content-model

モデルは、コンテンツのタイプを記述し、ネイティブアプリケーションで使用できる情報を示します。 これは、コンテンツの一部を構成する要素の説明です。 コンテンツモデルは、コンテンツの一部を作成する方法のルールです。 コンテンツモデルには、使用可能なデータ、使用可能なアセット、アセットとデータの関係、他のコンテンツモデルとの関係、使用可能なメタデータが含まれています。

モデルは、既存のAEM コンテンツを、ネイティブモバイルアプリで簡単に使用できるオブジェクトに変換する手段としても機能します。

Content Services には、アセット、HTMLコレクション、アセットページ、アプリ設定、チャネルに依存しないページなど、一般的なオブジェクトに対していくつかの標準モデルが用意されています。 これらは設定可能なので、AEMの開発作業を行わなくても特定のお客様のニーズに対応できます。

ユーザーは独自のモデルを作成できます。 これにより、AEMで管理されていない新しいコンテンツタイプを作成できます。 モデルの作成は、既存のプリミティブ型を使用する UI を通じて行われます。

次の図に、AEM Mobile アプリのコンテンツモデルと、エンティティ、フォルダー、スペースをアプリに割り当てる方法を示します。

chlimage_1-82

モデル the-models

モデルは、エンティティの作成方法を決定するために使用されます。 エンティティで使用できるもの、およびAEM コンテンツからデータを生成する方法を定義します。 スペース、フォルダ、エンティティの操作を開始する前に、モデルの作成と管理について理解しておく必要があります。

NOTE
複数のアプリで使用できるので、モデルはアプリの外部に存在します。

ダッシュボードとリポジトリでモデルを作成および管理するには、モデル を参照してください。

コンテンツモデル内のエンティティ entities-in-content-model

エンティティは、コンテンツモデルのインスタンスです。 エンティティは、コンテンツサービス API を通じてクライアントサイドライブラリに公開され、ネイティブアプリがチャネルに依存しない方法でコンテンツにアクセスする手段を提供します。

既存のAEM コンテンツがある場合、モデルおよびAEM コンテンツソースを使用してエンティティが生成されます。 例えば、ページエンティティは、AEM ページとページモデルから生成される、チャネルとレイアウトに依存しないオブジェクトです。

エンティティの参照コンテンツを変更すると、エンティティに変更が加えられます。 例えば、cq:page が更新されると、そのページに基づくすべてのエンティティも更新されます。

モデルからカスタムエンティティを作成するには、エンティティの操作 を参照してください。

NOTE
モデルが既存のAEM コンテンツに対応しない場合(お客様がモデルを作成した場合など)は、UI を使用してエンティティを作成できます。

コンテンツモデル内のスペース spaces-in-content-model

スペースは、簡単にアクセスできるようにエンティティを整理するために使用されます。 スペースには、1 つまたは複数のエンティティ タイプを含めることができ、サブフォルダを含めることができます。

AEM側では、スペースは関連するエンティティを管理する便利な方法です。 また、認証権限を割り当てるために使用することもできます。 承認はスペースに対して行うことができ、そのスペース内にあるエンティティを保護します。

ユーザーは 3 つの一般的な分類のエンティティを持ちます。 1 つは内部でのみ使用され、もう 1 つは公共での使用が承認されており、さらに 3 つ目は多くのアプリで使用されている共通エンティティの場合です。 管理を簡単にするために、ユーザーは 3 つのスペース(internalpublic (英語とフランス語の両方のコンテンツを使用)、common を作成して、以下に示すように適切なエンティティを管理します。

  • /content/entities/internal
  • /content/entities/public/en
  • /content/entities/public/fr
  • /content/entities/common

スペースにはサービス・エンド・ポイントが提供されるため、ネイティブ・クライアント・ライブラリはスペースのコンテンツのリストを要求できます。 この「リスト」は JSON オブジェクトとして返されます。

スペースの作成とパブリッシュについては、スペースとエンティティ を参照してください。

NOTE
スペースは多くのアプリで使用でき、アプリは多くのスペースを使用できます。

コンテンツモデルのフォルダー folders-in-content-model

フォルダーを使用すると、ユーザーは必要に応じてエンティティを整理でき、ACL 制御をより細かく行うことができます。 スペースには、スペースのコンテンツとアセットをさらに整理するのに役立つフォルダーを含めることができます。 ユーザーは、スペースの下に独自の階層を作成できます。

スペース内でフォルダを作成および管理するには、「スペース内のフォルダを使用する」を参照してください。

recommendation-more-help
2eeeb575-8007-40cc-a72d-206fbc4ddd4b