领域类:
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 的接口移动,但我不确定如何正确执行。你知道如何解决吗?