Play Framework 2.3.7 Ebean OneToMany关系未更新

时间:2015-01-21 14:25:15

标签: playframework persistence entity-relationship ebean playframework-2.3

我将我的项目从play framework 2.1.x更新到2.3.7。现在我有以下问题:

如果我使用Model.update()方法,则不会更新OneToMany关系。示例如下:

@Entity
@CacheStrategy
public class Workshop extends Model {
    @Id
    public Long id;

    @OneToMany(cascade = CascadeType.ALL)
    public List<WorkshopWholesaler> wholesalers;
}

@Entity
public class WorkshopWholesaler extends Model {
    @Id
    public Long id;

    @Column(nullable = false)
    @ManyToOne
    public Workshop workshop;

    @Column(nullable = false)
    @ManyToOne
    public Wholesaler wholesaler;
}

@Entity
@CacheStrategy
public class Wholesaler extends Model {
    @Id
    public Long id;
}

当我将WorkshopWholesaler添加到研讨会的批发商列表并随后使用研讨会的update()方法时,该关系将不会保存到数据库中。可能是什么问题呢?我使用Ebean作为持久层。

1 个答案:

答案 0 :(得分:0)

你必须设置关系的两面。因此,不仅要将这个新的WorkshopWholesaler添加到批发商列表中,还要在此新对象中设置workshop属性。