HI,
I have a pretty weird problems with dates.
my objective was to parse some text files and put them into a
database.
the lines of the file are divided with a | and some of the fields are
dates in this format dd.mm.yyyy
now in the parsing a get the system date to skip parsing elements in
the past @date is the local date created with @date = Time.now.to_date
params[:to] is the string from the file with the date in above format
I did this with a simple
if params && ( params[:to].to_date > @date ) # nie parsujemy starych
cennikow
Price.create_or_update params
end
on my local enviroment everything works fine but on the remote host i
get an invalid date ArgumentError
ruby version on host
ruby 1.8.6 (2007-06-07 patchlevel 36) [i386-linux]
local
ruby 1.8.7 (2009-06-12 patchlevel 174) [i686-linux]
params[:to] is the string from the file with the date in above format
I did this with a simple
if params && ( params[:to].to_date > @date ) # nie parsujemy starych
cennikow
Price.create_or_update params
end
on my local enviroment everything works fine but on the remote host i
get an invalid date ArgumentError
Catch the error in your code and log or display the params[:to] that
is causing it. Then you will likely see the problem. It is risky to
convert strings to date without checking validity and taking
appropriate action anyway.
well the params[:to] is a date in this format 27.02.2010, but when i
try to log params[:to].to_date I get an error
NoMethodError( undefined method’[]’ for nil:NilClass)
I’ve tried that too but stille get an argument error with invalid
date, i’ve log the dates an they look fine (the format’s ok) ;/
Really hate this kind of errors