Параметры, которые вы получаете:
{"commit"=>"Create",
"utf8"=>"\342\234\223",
"authenticity_token"=>"RKYZNmRaElg/hT5tlmLcqnstnOapdhiaWmDcjNDtSOI=",
"action"=>"create",
"note"=>
{"name"=>"note1",
"detail"=>"detail"},
"controller"=>"notes",
"custom_date"=>"03-03-2010"}
Следовательно, мы можем ясно разобрать
это не params[:custom_date]
, но это params['custom_date']
UPDATE
Метод Date.strptime следует определенному шаблону. Например,
str = "01-12-2010" #DD-MM-YYYY
then use
Date.strptime(str,"%d-%m-%Y")
но если
str = "2010-12-01" #YYYY-MM-DD
then use
Date.strptime(str,"%Y-%m-%d")