Search code examples
grailsnamed-query

Grails named query


I have two domain classes, Alpha and Beta.

class Beta{
  String betaName
  int age
}

class Alpha{
  String name
  static belongsTo=[creator:Beta]

  static namedQueries = {
    alphaByUser{ param ->
      eq creator.betName,param.betaName
}
    alphaByAge {param -> 
      eq creator.age,param 
    }
  }
}

Now when I call for example Alpha.alphaByUser(betaUser).list() I keep getting things like:

java.lang.NoSuchMethodException: Unknown property 'create' on class 'class org.codehaus.groovy.grails.commons.DefaultGrailsDomainClass'

Or

object is not an instance of declaring class

I just can't seem to get past it...

Any suggestions?


Solution

  • Your criteria syntax is a bit off. Try this:

    static namedQueries = {
        alphaByUser{ param ->
            creator {
                eq 'betName', param.betaName
            }
        }
    }