Inheritance 抽象类的TablePerHierarchy是否始终为false?

Inheritance 抽象类的TablePerHierarchy是否始终为false?,inheritance,grails,groovy,gorm,abstract,Inheritance,Grails,Groovy,Gorm,Abstract,根据,域类的子类与父类共享同一个表,除非tablePerHierarchy设置为false 我找不到以下映射语句是否因为“abstract”关键字而被忽略的信息 我的数据库不包含项表,每个子类包含一个表(tablePerHierarchy的预期状态==false) 我是否需要使项目具体化,但在验证中不允许它?我计划在创建表单中使用a选择一个带有子类的ItemController。我相信您已经找到了一些解决方案,但我今天遇到了同样的问题,所以我想我会插话 在Grails/Gorm文档第5.2.3节

根据,域类的子类与父类共享同一个表,除非tablePerHierarchy设置为false

我找不到以下映射语句是否因为“abstract”关键字而被忽略的信息

我的数据库不包含项表,每个子类包含一个表(tablePerHierarchy的预期状态==false)


我是否需要使项目具体化,但在验证中不允许它?我计划在创建表单中使用a选择一个带有子类的ItemController。

我相信您已经找到了一些解决方案,但我今天遇到了同样的问题,所以我想我会插话

在Grails/Gorm文档第5.2.3节中,它指出“Gorm支持从抽象基类和具体持久Gorm实体继承” ()

有趣的是,在本节的示例中,它们没有提供抽象类的示例

我尝试过,在我的层次结构中有一个抽象类(都在层次结构的顶部,然后再向下一个分支)。每次我试图持久化一个抽象对象的子类时,都会失败

我首先从层次结构的顶部删除了abstract关键字,得到了更积极的结果。最后,我从层次结构中的所有分支中删除了abstract关键字,一切正常

因此,我的结论是,在实践中,在Gorm层次结构中不能使用abstract关键字

因此,我计划的层次结构是一些简单的数据类型,例如: 抽象类型
abstract class Item implements Comparable{
  static mapping = {
    tablePerHierarchy true
  }
...