Menu というオブジェクトがあります。VoceMenu というオブジェクトのリストがあります
public class Menu implements Serializable{
@Column(name="titolo")
private String titolo;
@OneToMany(mappedBy="menu", fetch=FetchType.EAGER)
@Cascade({CascadeType.SAVE_UPDATE})
private List<VoceMenu> voceMenuList;
}
public class VoceMenu implements Serializable{
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="id", nullable=false, updatable=false)
private Integer id;
@Column(name="descrizione", nullable=false)
private String descrizione;
}
これが私の春のフォームです
<form:form modelAttribute="menu">
<form:input path="titolo" maxlength="50"/>
//List of VoceMenu//////////////////////////////////////////////
<form:hidden path="voceMenuList[${counter.index}].id"/>
<form:input path="voceMenuList[${counter.index}].descrizione" />
////////////////////////////////////////////////////////////////
</form:form>
このフォームは、既存の VoceMenu を編集する場合に問題ありません。VoceMenu には既に独自のid
.
しかし、新しい VoceMenu を追加したい場合は、もちろんvoceMenuList[${counter.index}].id
null になるので、これは問題です。
jquery を使用してフォームの一部を乗算して新しい VoceMenu を追加したいので、このフォームをどのように処理すればよいですか? path
フィールドidの属性には何を書けばいいですか?