java - 如何在Ebean中进行单向一对多关系

时间:2013-02-26 12:54:41

标签: playframework-2.0 ebean

我有一个单向关系,其中一个实体有一个另一个实体的列表(一对多)。

我已将cascade类型设置为CascadeType.ALL, 我收到了错误

[PersistenceException: Error inserting bean [class models.User$Activity] with unidirectional relationship. For inserts you must use cascade save on the master bean [class models.User].]

在这一行

userForm.get().update(id);

我想更新现有的用户条目。如果我用

替换上面的行
userForm.get().save();

它会创建重复的条目。是否有任何解决方案。请帮助我。 我的代码:

@Valid
@OneToMany(cascade=CascadeType.ALL)
public List<Activity> activities;

2 个答案:

答案 0 :(得分:5)

我与@OneToMany与Ebean的关系遇到了很多麻烦。我也多次遇到过这个错误信息。 我认为您需要在实体之间建立双向关系。

答案 1 :(得分:1)

我认为上面的答案正确地解决了问题:使关系双向化。此link

中提供了一个示例