This does not make sense to me - why would you need to specify a where clause to update an existing record. The user object should already have the id if it is an existing record and I would hope gorm would be smart enough to know that if the id exists, it should update. I wrote a gorm like library for Java, and it only requires a call to save. GORM recipes demonstrates how to effectively use the GORM persistence provider in a Grails 2.0 application. ... First, the query is built using the where clause, then executed via the find() method. This can be simplified to a single operation, as follows, but there are benefits to the two-step process which I'll highlight below..