Rails Helpers: dutch_date_select
Ruby on Rails kent de handige helper ‘date_select’ die automatisch een aantal select tags aanmaakt om een datum te kiezen. Het probleem hiermee is dat het in het Engels is en dat de volgorde niet volgens de Nederlandse standaard is (DD-MM-YYYY). Ik heb daarom even snel een ‘dutch_date_select’ helper geschreven. Let op: gebruik alleen deze helper als je zeker weet dat je alleen Nederlandse gebruikers zult krijgen. Als de website in meerdere talen te bekijken is kun je veel beter de lokalisatie bestanden aanpassen.
def dutch_date_select(object_name, method, *args)
options = args.extract_options!
options[:order] = [:day, :month, :year]
options[:use_month_names] = ["januari", "februari", "maart", "april", "mei", "juni", "juli", "augustus", "september", "oktober", "november", "december"]
date_select(object_name, method, options)
end
Behoorlijk gemakkelijke helper dus. Als je een User model hebt met een kolom genaamd ‘birthday’, dan doe je het volgende.
<%= dutch_date_select :user, :birthday %>
Je kunt overigens alle andere parameters meesturen die je bij date_select kunt gebruiken. Bijvoorbeeld :include_blank.
<%= dutch_date_select :user, :birthday, :include_blank => true %>
Dat was dan de dutch_date_select helper. Ik hoop dat je er wat aan hebt. Voor mij is het erg handig geweest bij een project voor 45north.

ongeveer 2 jaar geleden
Oehhh, heel handig. Goed dat je het ook in het Nederlandse format hebt gezet, veel mensen vergeten dat.