Hi ruby community, I use ruby 1.8.6, rails 2.2.2 and mysql 5.045. In my scaffold I use "t.date :birthday". When I want to save a birthday like 12.05.1970 I can save it. But when I try to save older birthdays like 12.05.1969 I get the error-message "time out of range". Remarkable is, when I try to save the date without ruby/rails directly in the mysl-database, there is no error-message, so it must be a kin of ruby/rails bug. Do somebody know a solution? Thanks in front for every proposal for solution:-) Regs Hermann -- Posted via http://www.ruby-forum.com/.
Dates can''t store earlier than I think 1970 something. Use time. Blog: http://random8.zenunit.com/ Twitter: http://twitter.com/random8r Learn: http://sensei.zenunit.com/ New video up now at http://sensei.zenunit.com/ real fastcgi rails deploy process! Check it out now! On 20/05/2009, at 3:14 AM, Herman Müller <rails-mailing-list@andreas-s.ne t> wrote:> > Hi ruby community, > > I use ruby 1.8.6, rails 2.2.2 and mysql 5.045. > > In my scaffold I use "t.date :birthday". > > When I want to save a birthday like 12.05.1970 I can save it. But > when > I try to save older birthdays like 12.05.1969 I get the error-message > "time out of range". > > Remarkable is, when I try to save the date without ruby/rails directly > in the mysl-database, there is no error-message, so it must be a kin > of > ruby/rails bug. > > Do somebody know a solution? > > Thanks in front for every proposal for solution:-) > > Regs Hermann > -- > Posted via http://www.ruby-forum.com/. > > >
On Tue, May 19, 2009 at 10:14 AM, Herman Müller <rails-mailing-list-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org> wrote:> I use ruby 1.8.6, rails 2.2.2 and mysql 5.045. > > In my scaffold I use "t.date :birthday". > > When I want to save a birthday like 12.05.1970 I can save it. But when > I try to save older birthdays like 12.05.1969 I get the error-message > "time out of range". > > Remarkable is, when I try to save the date without ruby/rails directly > in the mysl-database, there is no error-message, so it must be a kin of > ruby/rails bug.Can you print the entire error message and stack trace, if any? I just tried this on the same setup and had no error. -- Hassan Schroeder ------------------------ hassan.schroeder-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
2009/5/19 Julian Leviston <julian-AfxEtdRqmE/tt0EhB6fy4g@public.gmane.org>:> > Dates can''t store earlier than I think 1970 something. Use time.The MySQL Date doc for 5.0.x says: The DATE type is used when you need only a date value, without a time part. MySQL retrieves and displays DATE values in ''YYYY-MM-DD'' format. The supported range is ''1000-01-01'' to ''9999-12-31''. FYI, -- Hassan Schroeder ------------------------ hassan.schroeder-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
Thanks for all suggestions! I made a little date experiment and the normal date range of ruby 1.8.6, rails 2.2.2 and mysql 5.045 is between 01.01.0001 and 01.01.3000 or greater. The error message "argument out of range" appears only when I use the DHTMLCalendar plugin from ruby script/plugin install http://dhtml-calendar.googlecode.com/svn/trunk The first two lines of the Application-Trace vendor/plugins/svn/lib/extensions/active_record.rb:61:in `local'' vendor/plugins/svn/lib/extensions/active_record.rb:61:in `quote'' are pointing to a fault in the active_record.rb of the DHTMLCalendar-plugin: Line 61: when Date then "''#{quoted_date(Time.local(value.year, value.month, value.day, 0, 0, 0))}''" else quote_without_date_cast(value, column) Do somebody knows a solution? Thanks in front. Regs Hermann -- Posted via http://www.ruby-forum.com/.
On May 22, 9:25 am, Herman Müller <rails-mailing-l...-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org> wrote:> Thanks for all suggestions! > > I made a little date experiment and the normal date range of ruby 1.8.6, > rails 2.2.2 and mysql 5.045 is between 01.01.0001 and 01.01.3000 or > greater. > > The error message "argument out of range" appears only when I use the > DHTMLCalendar plugin from > > ruby script/plugin installhttp://dhtml-calendar.googlecode.com/svn/trunk > > The first two lines of the Application-Trace > > vendor/plugins/svn/lib/extensions/active_record.rb:61:in `local'' > vendor/plugins/svn/lib/extensions/active_record.rb:61:in `quote'' > > are pointing to a fault in the active_record.rb of the > DHTMLCalendar-plugin: > > Line 61: when Date then "''#{quoted_date(Time.local(value.year, > value.month, value.day, 0, 0, 0))}''" > else quote_without_date_cast(value, column) > > Do somebody knows a solution?While the ruby Date class has an absolutely massive range, Time doesn''t, so the plugin shouldn''t really be converting a date instance into a instance of Time (at least not without checking if it is possible first) Fred> > Thanks in front. > > Regs Hermann > -- > Posted viahttp://www.ruby-forum.com/.