子モデルの扱い最終更新日: 2020年6月12日

親子関係の子モデルの扱い

ここでは、親を「顧客モデル(customer)」とし、紐づく子が「サポートモデル(support)」となっている関係で説明します。

顧客モデルの詳細表示画面で画面下部に表示されるサポートモデルの情報を確認するには SupportLp を利用します。

pageTitle().shouldHave(exactText("顧客情報 詳細表示"));
Customer customer = new Customer();
customer.name.shouldHave("ジャスミン太郎");
...
// 子モデルの情報確認は一覧表示用のモデルを使う。
SupportLp supportLp = new SupportLp();
SupportLp record01 = supportLp.get(1);
record01.supportdate.shouldHave("2018-01-30");
record01.title.shouldHave("Wagby");
record01.content.shouldHave("メールにてインストール方法を説明する。");
...

更新の場合

親子モデル同時更新では、上と同様に一覧更新画面用の WTF モデル SupportUlp を使って子モデルの情報入力を行います。

pageTitle().shouldHave(exactText("顧客情報 新規登録"));
customer.name.val("ジャスミン太郎");
...
// 同時更新の子モデルの"新規"ボタンをクリック
clickNewButton();
pageTitle().shouldHave(exactText("顧客情報 新規登録"));
// 同時更新子モデルの情報入力は一覧更新用のモデルを使う。
SupportUlp supportUlp = new SupportUlp();
SupportUlp record01 = supportUlp.get(1);
record01.supportdate.val("2018-01-30");
record01.title.val("Wagby");
record01.content.val("メールにてインストール方法を説明する。");
...
save();
pageTitle().shouldHave(exactText("顧客情報 詳細表示"));