search - 如何使用具有域hasMany成员的findByAll?

标签 search grails gorm

我有:

static hasMany = [
    services:String,
    tags:String
]

我需要在数据库中搜索服务。

这是服务的JSON
 "services":["tid.2","tid.3"]

如果服务是字符串(服务)而不是hasMany字符串,则tbis可以工作
def inUse = ServiceTemplate.findAllByName(serviceTemplateInstance.service).size() > 1

我该如何使用服务?

我试过了
            def c = ServiceTemplate.createCriteria()
            def results = c.list { eq('services', 'tid.2') }

但没有运气

最佳答案

您可以改用HQL。例如:

ServiceTemplate.findAll("from ServiceTemplate st where :service in elements(st.services)", [service:'a'])

关于search - 如何使用具有域hasMany成员的findByAll?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7518865/

相关文章:

database - 修复一个简单的 Elasticsearch 查询

spring - 将现有域类与 Spring Security 插件一起使用

grails - 任何想法,如何避免if语句在这里

grails - Grails/Gorm:排序具有许多关系

grails - GORM在调用beforeInsert方法之前检查约束

c++ - LeetCode TwoSum 解决方案不起作用

php - 在 PHP 中高效的平面文件搜索

c# - 包含的有效搜索

spring - 使用curl测试时,Grails Spring Security Rest未经授权(401)

Grails Controller 服务 - 用于属性值的 src/groovy 轮询 Controller