我是个新手,如果没有有人可以问这类问题,尝试理解它是一项艰巨的工作。
我有以下问题。这是我的两个 Realm 类:Pagadora和Calculo

Pagadora.groovy

class Pagadora {
     String nombre
     Boolean activo
     static hasMany = [calculoIMSS: Calculo, calculoPagado: Calculo, calculoConvenio: Calculo]
     static mappedBy = [calculoIMSS: 'imss', calculoPagado:'pagadoPor', calculoConvenio:'convenio']
}

bool(boolean) 变量activo表示“Pagadora”是否将出现在Calculo类的 View 的“选择列表”中

Calculo.groovy
class Calculo {
    String nombre
    BigDecimal sueldo
    static belongsTo = [imss:Pagadora, pagadoPor:Pagadora, convenio:Pagadora]
}

我想要的是以下内容,我想在选择中进行过滤,仅激活的Pagadoras
 <g:select id="imss" name="imss.id" from="${Pagadora.Pagadora.list(sort: "nombre", order: "asc")}" optionKey="id" required="" value="${calculoInstance?.imss?.id}" class="many-to-one form-control" noSelection="['':'-Escoja la empresa-']" />

抱歉,如果很难理解我,但是对我来说,用英语解释这样的内容有点困难(我的母语是西类牙语:P)

最佳答案

如果要获取所有 Activity 的条目,请将from属性更改为:

from="${Pagadora.findAllByActivo(true) [sort: 'nombre', order: 'asc']}"

这是一个dynamic finder

Jeff在注释中指出可以忽略此处的boolean参数(请参阅findAllBy的示例)。如果要获取所有不 Activity 的条目,仍然可以通过命名finder findAllByNotActivo来不使用该参数。当您有两个用于查找器的参数,其中一个是 bool(boolean) 值时,这特别方便。

09-04 22:34