Play Framework 2とebeanで多対多の関係を更新するにはどうすればよいですか?私は次のようなエラーが発生し続けます:
[PersistenceException: org.postgresql.util.PSQLException: ERROR: duplicate key value violates unique constraint "pk_field_event" Detail: Key (field_id, event_id)=(3, 21) already exists.]
フォームを使用して、イベントに属するフィールドを選択しようとしています。フィールドのリストを含むフォームを送信します。idプロパティは、入力される唯一のプロパティです。次に、次のことを行います。
Event event = Event.find(eventId);
event.fields = fieldsForm.get().fields;
event.update();
また、dbから各フィールドをロードし、それにイベントを追加してから、フィールドでupdate()を呼び出してみました。
これが私のクラスです:
注:わかりやすくするために、エンティティとIDのアノテーションを削除しました。
public class Event {
@ManyToMany(cascade = CascadeType.ALL, mappedBy = "events")
public List<Field> fields;
}
}
public class Field {
@ManyToMany(cascade = CascadeType.ALL)
public List<Event> events;
}