GORM/Grails::是否可以根据模型中列表的内容进行查询?

GORM/Grails::是否可以根据模型中列表的内容进行查询?,grails,groovy,gorm,Grails,Groovy,Gorm,假设如下: class Thing { String name List<String> tags static constraints = { name(nullable: false) tags(nullable: false) } } 类的东西{ 字符串名 列表标签 静态约束={ 名称(可空:false) 标记(可为空:false) } } 我想知道是否有可能使用GORM根据域实例各自列表中的值来运行域实

假设如下:

class Thing {

    String name
    List<String> tags

    static constraints = {
        name(nullable: false)
        tags(nullable: false)
    }

}
类的东西{
字符串名
列表标签
静态约束={
名称(可空:false)
标记(可为空:false)
}
}
我想知道是否有可能使用GORM根据域实例各自列表中的值来运行域实例查询

例如:是否有动态GORM Finder来查询诸如“查找所有带有标记“Video”的内容”或“查找带有标记“Image”的name=“Product1”的所有内容”之类的内容

我只是想知道Grails&Gorm是否有一种简洁的方法来实现这一点,而不是检索一个事物列表并遍历它,找到具有适当标记的事物并将它们添加到结果列表中

谢谢

一种方法(虽然不一定是最有效的!)是返回
Thing
s的整个列表,例如
Thing.list()
,然后使用
findAll
过滤结果列表

List results=Thing.List().findAll{it.tags.contains(“Image”)}

你的
事物和相关的
标记的列表可能有多大?

一种方法(虽然不一定是最有效的!)是返回
事物的整个列表,例如
事物.list()
,然后使用
findAll
过滤结果列表

List results=Thing.List().findAll{it.tags.contains(“Image”)}


您的
东西
s和相关的
标记
s列表可能有多大?

值得补充的是,我们使用的是MongoDB,而不是传统的mysql,据我所知,HQL不是一个选项?(我可能又错了)你是对的,HQL(Hibernate查询语言)只适用于传统的关系型/SQL数据库。顺便说一句,Grails也有用于MongoDB的GORM插件。值得补充的是,我们使用的是MongoDB,而不是传统的mysql,所以据我所知,HQL不是一个选项?(我可能又错了)你是对的,HQL(Hibernate查询语言)只适用于传统的关系型/SQL数据库。顺便说一句,Grails也有用于MongoDB的GORM插件