Variable datetimes

Hi, I have to store dates inside a DB, but unfortunately my date representation can be a string like "2007" but also a normal date string, like "2007-8-12" ... I want to use Date/DateTime objects because they are easy to manipulate, but Date.parse can parse only the second format, not the first (which is understandable ...). How can I solve this problem ? Storing something like 2007-0-0 or 2007-1-1 is ok for me, like in Date.new(2007). I can check if the string contains '-' and if not do something like Date.new(string.to_i) but I don't like this solution ...

TIA,    ngw Chiacchiera con i tuoi amici in tempo reale! http://it.yahoo.com/mail_it/foot/*http://it.messenger.yahoo.com

string = ‘2007-01-01’ Date.new(*string.split(‘-’).map(&:to_i))

Thank you, but my problem is that my input is only '2007', if I had a string like '2007-01-01' I could use Date.parse :slight_smile:

   ngw Chiacchiera con i tuoi amici in tempo reale! http://it.yahoo.com/mail_it/foot/*http://it.messenger.yahoo.com

irb:> string = '2007' => "2007" irb:> Date.new(*string.split('-').map(&:to_i)) => 2007-01-01

This seems to actually do what you want it to...

_Kevin