hibernate – Grails在[rewards.OnlineOrder]引用[rewards.OrderOtem]上的列[order_items_order_item]缺少类型或列

因此,在尝试运行我的grails应用程序时,我一直收到主题行错误.以下是我的两个域类,它们似乎是错误的原因.

网上订单:

package rewards

class OnlineOrder {

    Date orderDate
    Integer orderNumber
    Float orderTotal

    static belongsTo = [customer:Customer]
    static hasMany = [orderItems:OrderItem]

    static constraints = {
    }
}

OrderItem的:

package rewards

class OrderItem {

    Integer qty
    Float total

    static belongsTo = [orders:OnlineOrder, product:Product]

    static constraints = {
    }
}

错误读取为:引起:org.hibernate.MappingException:域[rewards.OnlineOrder]上的列[order_items_order_item]缺少类型或列,引用[rewards.OrderItem]

看起来它说我还没有定义OrderItem,我在我的OnlineOrder域中将它作为一个孩子引用.但我似乎无法弄清楚为什么会导致错误. OrderItem类与OnlineOrder在同一目录中创建,非常简单.

有什么建议?

最佳答案 我在应用程序中有类似的问题,通过从目标文件夹中检测类文件并重新运行应用程序解决了同样的问题.这个错误通常是因为我在我的domin中更改了一个属性名称,并在数据库中创建了新的db列.

问候,
拉乌夫

点赞