I have this simple domain class:
class Settings {
static constraints = {
uid(nullable: false, unique: true)
person()
}
String uid
Map person
}
You can do something like the following in your controller:
def json = request.JSON;
def s = new Settings(json);
s.person = json.person;
it's ugly, but the data binding doesn't seem to handle nested json
If you add this line before instantiating Settings, it will bind recursively.
JSON.use('deep')
If you want that to work you need to convert your structure to this:
{"uid":1234 , "person.first_name": "jhon" , "person.last_name": "doe"}