Databinding
De acuerdo a la especificación HTML, un control disabled no es enviado en el submit y por lo tanto en Grails será asignado el valor por default a la propiedad en el data binding. Una alternativa para que se envíe el valor del control en el request es marcando el control como readonly en vez de disabled.
Es la relación que tiene por dentro grails para hacer referencia en un campo de html con un dommain class, para poder hacer está referencia el campo del html o gsp debe tener el campo name
de lo contrario no funcionaría.
El databinding siempre manda el dato como cadena del cliente
al servidor
El databinding hace 3 cosas
Tipe(conversión de tipo): donde se encarga de hacer la conversion de datos dependiendo de lo que este resiviendo pero esto solo funciona con los datos primitivos (int,String,dooble, etc)
.
Enlace de datos: donde hace el enlace con el campo name
de la pagina html.
Validación:
Esto se podría ser una forma manual
Ejemplo
def save(){//acción
//esto se hacia en la vieja escuela
def nombre = request.get.Parameters("nombre")
def edad = request.get.Parameters("edad")
//en grails se puede manejar de la siguiente manera
def nombre = params.nombre
def edad = params.int("edad")//el int se mete para poder hacer el cambio de tipo de dato
// ya que como lo habiamos dicho el databinding te regresaria una cadena
}
Esto se podría ser una forma automatica
Ejemplo
def save(String nombre, int edad){//acción
//tambien se puede manejar de la siguiente manera
}