オブジェクト Customer について、複数の注文があります。そのため、1 つのページに顧客と複数の注文オブジェクトがあり、
<select name="customer.order[0].orderType" id="orderType" >
#{list orderTypes}
<option value="${_.id}">${_.name}</option>
#{/list}
</select>
<select name="customer.order[1].orderType" id="orderType" >
#{list orderTypes}
<option value="${_.id}">${_.name}</option>
#{/list}
</select>
モデルのお客様:
public class Customer{
@OneToMany(mappedBy = "customer")
public List<Order> orders;
}
モデルの注文:
public class Order{
@ManyToOne
public TypeOrder orderType;
}
コントローラー:
public static void saveCustomerOrder(Customer customer) {
customer.save();
System.out.println(customer.orderType.name + " " + customer.order.size() + " " + customer.order.get(0).orderType);
}
したがって、注文サイズは 2 になります。しかし、orderTypeのデータを取得できません。誰でもこれで私を助けることができますか?(データベースには保持されませんが、顧客オブジェクトは保存されます)
customer.save(); を実行すると 私は顧客を救い、注文を救いたいと思っています。(これは単なるサンプルプログラムです)
- 編集 - -
注文をループして個別に保存すると機能します。
for(Order o : customer.orders)
o.save();
親モデルを保存するときに子モデルを保存できるかどうかを知りたいだけです。注釈がありませんか?