0

领域类:

class Carnet extends Purchasable{
    Payment payment
}

class Training extends Purchasable{
    static hasMany = [payments:Payment]
}

class Payment {
    static belongsTo = [purchase:Purchasable]
}

class Purchasable {

    Float price

    static constraints = {
    }

    static mapWith = "none"

    static mapping = {
    tablePerHierarchy false
    }
}

不幸的是,当我尝试时,grails run-app我得到了:

错误 org.hibernate.tool.hbm2ddl.SchemaUpdate - HHH000388:不成功:更改表支付添加约束 FK_6ohgqce5txqxe8l8wkkkgjlc0 外键(purchase_id)参考培训(id)

错误 org.hibernate.tool.hbm2ddl.SchemaUpdate - 无法写入;表'#sql-690_99'中的重复键

应用程序正在启动,但未创建 db 中的 carnet 表,因此稍后我收到 MySQL 异常。此外,创建了可购买的表(我根本不需要它)。我试图Purchasable作为 src/groovy 的接口移动,但我不确定如何正确执行。你知道如何解决吗?

4

0 回答 0