Grails2.5不在子类中保存父属性类的赋值

Grails2.5不在子类中保存父属性类的赋值,grails,Grails,我有4个类,其中父类与其他类有关系,但子类不设置关系,验证告诉我属性不能为null,但我确实设置了它 class Lote { static hasMany = [movimientos:Movimiento] } class Almacen { static hasMany = [entradas:Movimiento] } class Movimiento { static belongsTo = [lote:Lote, destino:Almacen] } cla

我有4个类,其中父类与其他类有关系,但子类不设置关系,验证告诉我属性不能为null,但我确实设置了它

class Lote {
    static hasMany = [movimientos:Movimiento]
}

class Almacen {
  static hasMany = [entradas:Movimiento]
}

class Movimiento {
    static belongsTo = [lote:Lote, destino:Almacen]
}

class Ingreso extends Movimiento{

  def Almacen getDestino(){
    return this.destino
  }

  def Almacen getOrigen(){
    return null
  }
}
我的MoviMinentoService提供:

  def registrarIngreso(def loteId, def params){
    Movimiento ingreso = new Ingreso(params)
    ingreso.lote = Lote.get(loteId)
    ingreso.destino = Almacen.get(params.almacenId)

    if (ingreso.validate()){
      ingreso.save flush:true
    }

    return ingreso
  }
我知道Movimento需要是一个抽象类

almace.lote已设置,但almace.destino未设置

为什么??我忘了什么?Lote和MOVIMINTO类与Almacen和MOVIMINTO具有相同的关系。

我认为在Ingreo类中设置def Almacen getDestino可能会有问题-可以尝试删除此方法吗?
您不必手动创建getter,GORM应该知道它应该返回destino对象

是的,苏里塔,这就是问题所在。我删除了该方法,关系运行良好。谢谢我在其他子类中创建了returnnull方法,但定义了destino-nullable约束:true,这不是必需的。