Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb GORM Inheritance和获取超级类_Mongodb_Grails_Groovy_Gorm - Fatal编程技术网

Mongodb GORM Inheritance和获取超级类

Mongodb GORM Inheritance和获取超级类,mongodb,grails,groovy,gorm,Mongodb,Grails,Groovy,Gorm,我有以下grails域对象 abstract class A { String name } class B extends A { String propertySpecificToB } class C extends A { String propertySpecificToC } 我可以成功地将它们保存到我的数据库(在本例中是MongoDB)。但是,我想列出数据库中所有行的名称,因此我会执行以下操作: A.list() 但是,当它试图创建抽象类A的实例时,

我有以下grails域对象

abstract class A {
    String name
}

class B extends A {
    String propertySpecificToB
}

class C extends A {
    String propertySpecificToC
}
我可以成功地将它们保存到我的数据库(在本例中是MongoDB)。但是,我想列出数据库中所有行的名称,因此我会执行以下操作:

A.list()
但是,当它试图创建抽象类A的实例时,会抛出一个实例化异常。我如何列出所有行(无论它是哪个类)。我可以做一个非抽象的,但A永远都是无效的。另外,我想在A中放置一些抽象方法

我真的希望它返回一个a的列表,这个列表实际上包含b和Cs


我找到了一个,但这并没有解决这个问题。

好的,我只是用Hibernate而不是mongo插件尝试了我的代码,它似乎按照我希望的方式工作。因此,这可能是mongo插件的一个bug?对于mongo db插件,如果您不将基类
抽象化
,它就可以工作。我知道这并不理想,但它可能是一个解决办法。好吧,我只是用Hibernate而不是mongo插件尝试了我的代码,它似乎按照我希望的方式工作。因此,这可能是mongo插件的一个bug?对于mongo db插件,如果您不将基类
抽象化
,它就可以工作。我知道这并不理想,但可能是一个解决办法。