Why is it so hard to extract the date from the view via the params in a grails controller?
I don’t want to extract the date by hand like this:
instance.dateX = parseDate(params["dateX_value"])//parseDate is from my helper class
I just want to use instance.properties = params.
In the model the type is java.util.Date and in the params is all the information: [dateX_month: 'value', dateX_day: 'value', ...]
I searched on the net and found nothing on this. I hoped that Grails 1.3.0 could help but still the same thing.
I can’t and will not believe that extracting the date by hand is necessary!
Grails Version >= 2.3
A setting in
Config.groovydefines the date formats which will be used application-wide when binding params to aDateThe formats specified in
grails.databinding.dateFormatswill be attempted in the order in which they are included in the List.You can override these application-wide formats for an individual command object using
@BindingFormatGrails Version < 2.3
Your stubbornness is rewarded, it has been possible to bind a date directly since long before Grails 1.3. The steps are:
(1) Create a class that registers an editor for your date format
(2) Make Grails aware of this date editor by registering the following bean in
grails-app/conf/spring/resources.groovy(3) Now when you send a date in a parameter named
fooin the formatyyyy/MM/ddit will automatically be bound to a property namedfoousing either:or