[Rails] use DataTime class with ActiveRecord column
ActiveRecord’s :datetime corresponds to ruby Time class. But Time class can’t use old timestamps like 0001-01-01 00:00:00. (ActiveRecord converts 0001-01-01 00:00:00 to 2001:01:01 00:00:00.) So overwrite ActiveRecord to use DateTime class with :datetime. Test Environment: Ubuntu 9.04 ruby 1.8.7 (2008-08-11 patchlevel 72) [i486-linux] rails 2.3.2 – 2.3.4 mysql Ver 14.12 Distrib 5.0.75, for debian-linux-gnu (i486) using readline 5.2 Just put following code active_record_datetime_ext.rb into RAILS_ROOT/config/initializers # -*- coding: utf-8 -*- # ActiveRecord column data type :datetime corresponds to ruby Time class. # # class CreateTasks < ActiveRecord::Migration # def self.up # create_table :tasks do |t| # t.column :title, ...
[Ruby] HOW TO use multiple databases with ActiveRecord
Sometimes you need to access multiple databases in one application. For example, using different application’s database. But usually ActiveRecord is configured to ActiveRecord::Base directly, and so establishes a connection with ActiveRecord::Base, so you can’t use multiple database with AR. So how to do it? Just create sub-classes of ActiveRecord::Base. Sub-classes of ActiveRecord::Base can access parent class configurations and connections. So create a sub-class of ActiveRecord::Base BaseDB then set configurations to it. Create sub-classes of BaseDB then establish database connection each of them. It’s better than to set configurations and establish connection on ActiveRecord::Base directly for future. ActiveRecord::Base BaseDB <...

