I’m doing my first experiments with Grails and am looking for a way to have fields represented by a combobox (such as one-to-one domain associations and numbers with a narrow range constraint) to be optional, i.e. there should be an empty entry in the combobox.
How can this be achieved? I’ve tried both adding a nullable:true constraint and listing the fields in the optionals static property, but neither produces the desired result.
These are my domain classes:
class Customer { String name } class Book { static optionals = ['year','loanedTo','loanedSince'] static constraints = { title(blank:false) author(blank:false) year(range:1900..new Date().getAt(Calendar.YEAR), nullable:true) loanedTo(nullable:true) loanedSince(min:new Date()) } String title; String author; Integer year; Customer loanedTo; Date loanedSince; }
I’ve found that the
nullable:trueconstraint actually does have the desired effect – however, it does not take effect immediately; you have to restart Grails to see it.