He intentado crear un generador de criterios que contenga una relación de belongsTo y aún tengo que tener éxito. Considere el siguiente modelo:No se puede crear una consulta de criterios de Grails que contenga una relación de belongsTo
class Msg {
...
static belongsTo = [user: User]
...
}
class User {
...
Organisation organisation
...
}
que estoy tratando de hacer la siguiente consulta:
Msg.createCriteria().list() {
...
user {
eq("organisation", organisationInstance)
}
...
}
Todo lo que estoy recibiendo es el siguiente error
ERROR errors.GrailsExceptionResolver - No signature of method: static User.call() is applicable for argument types: (MsgService$_findMessages_closure1_closure6) values: [[email protected]]
Possible solutions: save(), wait(), any(), getAll(), save(java.lang.Boolean), save(java.util.Map)
He tratado de Agregue diferentes pequeñas adiciones a la consulta de criterios como:
join "user"
fetchMode("user", org.hibernate.FetchMode.EAGER)
Pero todavía tiene el mismo problema.
Incluso he intentado añadir la siguiente asignación estática a la clase de error:
static mapping = {
columns {
user lazy: false
}
}
Todavía no funciona.
¿Hay alguna forma de usar el generador de criterios que contenga una consulta belongsTo?
Gracias por su ayuda con anticipación.
Lucien
me ayudó después de golpear mi cabeza por mucho tiempo. El error no dio ningún tipo de pista con respecto a este problema. Gracias por compartir –