(非推奨)ガイド内の複雑なモデルオブジェクト

複雑なモデルオブジェクトとは、複数の値にマップされる、ガイド内のオブジェクトです。これらのオブジェクトは、値の内部的な複数列テーブルを使用して、データセット内のオブジェクト全体(または、オブジェクトのコレクション)にマップされます。

複雑なモデルオブジェクトを使用して、特定のソースからのデータ取得を制御できます。1 つの内部列の値を使用して、取得するデータの行を選択します。例えば、複雑なモデルオブジェクトが従業員のコレクションである場合、名前のリストをユーザーに対して表示し、選択に基づいて従業員のレコード全体を表示できます。

また、1 つの複雑なモデルオブジェクトを、カスタムコントロールなどのガイド拡張機能へのデータ入力として使用できます。この方法で、多様なデータセットをカスタムコントロールに提供し、ガイドユーザー用の追加機能を作成できます。

チュートリアル:複雑なモデルオブジェクトの作成

このチュートリアルでは、モデルを使用して複雑なデータオブジェクトを作成する方法について説明します。開始する前に、次のタスクを完了したことを確認します。

  • モデルに基づくガイドの作成

  • モデル構造と一致するサンプルデータファイルの作成

注意: このチュートリアルでは、次のモデル定義とサンプル XML データ定義を使用します。

サンプルモデル定義

<model xmlns="http://ns.adobe.com/Fiber/1.0"> 
    <entity name="Entity" persistent="true"> 
        <annotation name="VisualModeler"> 
            <item name="x">46</item> 
            <item name="y">43</item> 
            <item name="width">115</item> 
            <item name="height">78</item> 
        </annotation> 
        <id name="ID" type="integer" generated="false"/> 
        <property name="employees" type="Employee[]"/> 
        <property name="employee" type="Employee"/> 
    </entity> 
    <entity name="Employee"> 
        <annotation name="VisualModeler"> 
            <item name="x">247</item> 
            <item name="y">93</item> 
            <item name="width">115</item> 
            <item name="height">94</item> 
        </annotation> 
        <property name="firstName" type="string"/> 
        <property name="lastName" type="string"/> 
        <property name="address" type="string"/> 
        <property name="employeeHistory" type="EmployeeHistory[]"/> 
    </entity> 
    <entity name="EmployeeHistory"> 
        <annotation name="VisualModeler"> 
            <item name="x">434</item> 
            <item name="y">102</item> 
            <item name="width">115</item> 
            <item name="height">62</item> 
        </annotation> 
        <property name="employer" type="string"/> 
        <property name="jobDescription" type="string"/> 
    </entity> 
</model>

サンプル XML データ

<employeeinfo> 
    <Entity> 
        <ID>0</ID> 
        <employees> 
            <firstName>Tony</firstName> 
            <lastName>Blue</lastName> 
            <address>1 ABC Street</address> 
            <employeeHistory> 
                <employer>123 Contracting</employer> 
                <jobDescription>Senior Software Developer</jobDescription> 
            </employeeHistory> 
            <employeeHistory> 
                <employer>123 Contracting</employer> 
                <jobDescription>Junior Software Developer</jobDescription> 
            </employeeHistory> 
        </employees> 
        <employees> 
            <firstName>Alex</firstName> 
            <lastName>Pink</lastName> 
            <address>10 XYZ Avenue</address> 
            <employeeHistory> 
                <employer>Bobby's Road House</employer> 
                <jobDescription>Cook</jobDescription> 
            </employeeHistory> 
        </employees> 
        <employees> 
            <firstName>Chris</firstName> 
            <lastName>Black</lastName> 
            <address>33-C Alphabet Lane</address> 
            <employeeHistory> 
                <employer>Big Bank Incorporated</employer> 
                <jobDescription>Branch Manager</jobDescription> 
            </employeeHistory> 
            <employeeHistory> 
                <employer>Little Bank Corporation</employer> 
                <jobDescription>Customer Service</jobDescription> 
            </employeeHistory> 
            <employeeHistory> 
                <employer>Small Town Co-operative</employer> 
                <jobDescription>Custodian</jobDescription> 
            </employeeHistory> 
        </employees> 
        <employee> 
            <firstName /> 
            <lastName /> 
            <address /> 
        </employee> 
    </Entity> 
</employeeinfo>

複雑なオブジェクトの作成

  1. Data Model ビューで、employee エンティティをガイドにドラッグします。

  2. Data Model ビューで、employee エンティティを展開します。firstName、lastName および address オブジェクトをガイドにドラッグします。

  3. Guide Tree ビューで、Employee オブジェクトを選択します。

  4. Guide properties ビューで、List source プロパティを Entity.employees に設定します。

  5. Guide properties ビューで、List text プロパティを、実行時にドロップダウンリストに表示されるモデルプロパティに設定します。例えば、firstName を選択します。

  6. Guide Tree ビューで、ガイドのルートノードを選択します。Guide Properties ビューで、Sample data プロパティで使用するサンプルデータファイルの場所を指定します。

  7. ガイドを保存し、エディターで「Preview」をクリックします。

ガイドがブラウザーでレンダリングされたときに、Employee ドロップダウンリストをクリックして名前を選択します。サンプルデータファイルの対応する値で First Name、Last Name および Address フィールドが更新されます。

ドロップダウンリストにカスタマイズした値を表示する場合は(lastname, firstname など)、モデル内に派生したプロパティを作成します。準備ができたら、ドロップダウンリストの List text プロパティの値を、派生したプロパティの名前に設定します。