2010-11-22 8 views
3

Ich möchte Daten in jQuery zu formatieren Sie die UI Datepicker wie folgt aus:Wie kann ich die Datumsanalyse von Rails von Params anpassen?

Sunday - 11/28/2010 

Wie/wo kann ich in einem benutzerdefinierten Parser für Rails stecken, damit es das funktioniert so:

def create 
    puts params[:event] #=> {"my_date"=>"Sunday - 11/28/2010"} 
    event = Event.new(params[:event]) 
    puts event.my_date #=> nil 
end 

Diese funktioniert:

def create 
    puts params[:event] #=> {"my_date"=>"11/28/2010"} 
    event = Event.new(params[:event]) 
    puts event.my_date #=> Mon, 22 Nov 2010 
end 

Was ist die Rails Weg, dies zu tun?

Antwort

2

Sie Chronic verwenden könnte, eine natürliche Sprache Datum/Zeit-Parser

Time.now #=> Sun Aug 27 23:18:25 PDT 2006 

Chronic.parse('tomorrow') 
#=> Mon Aug 28 12:00:00 PDT 2006 

Chronic.parse('monday', :context => :past) 
#=> Mon Aug 21 12:00:00 PDT 2006 

Chronic.parse('this tuesday 5:00') 
#=> Tue Aug 29 17:00:00 PDT 2006 

Chronic.parse('may 27th', :guess => false) 
#=> Sun May 27 00:00:00 PDT 2007..Mon May 28 00:00:00 PDT 2007 

http://chronic.rubyforge.org/

0
 
params[:event][:my_date] = Date.parse(params[:event][:my_date]) 
event = Event.new(params[:event]) 
Verwandte Themen