I'm trying to set default sort of my hasMany
attribute using mapping statement. I'm following the grails doc but it doesn't work for me (grails 1.3.5). My code looks like:
class Note {
Calendar sendDate
static belongsTo = Message
}
class Message {
static hasMany = [notes: Note]
static mapping = {
notes sort:'sendDate desc'
}
}
The error message looks like:
...
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'notes0_.sendDate' in 'order clause'
at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
at com.mysql.jdbc.Util.getInstance(Util.java:384)
...
Do you see any mistakes in my code?
A couple things that may help fix the problem:
Calendar
for the sendDate
property? Most of the time, one would use a java.util.Date
. Does changing the field type to a Date
fix the issue?I ran an example with your mappings and got an error. Try changing your Message
static mapping
closure to this:
static mapping = {
notes sort: 'sendDate', order: 'desc'
}