reset_column_information() public

Resets all the cached information about columns, which will cause them to be reloaded on the next request.

The most common usage pattern for this method is probably in a migration, when just after creating a table you want to populate it with some default values, eg:

 class CreateJobLevels < ActiveRecord::Migration
   def self.up
     create_table :job_levels do |t|
       t.integer :id
       t.string :name

       t.timestamps
     end

     JobLevel.reset_column_information
     %w{assistant executive manager director}.each do |type|
       JobLevel.create(:name => type)
     end
   end

   def self.down
     drop_table :job_levels
   end
 end
Show source
Register or log in to add new notes.
September 2, 2008
5 thanks

Useful in migrations

The most common usage pattern for this method is probably in a migration, when just after creating a table you want to populate it with some default values, eg:

  class CreateJobLevels < ActiveRecord::Migration
    def self.up
      create_table :job_levels do |t|
        t.integer :id
        t.string :name

        t.timestamps
      end

      JobLevel.reset_column_information
      %w{assistant executive manager director}.each do |type|
        JobLevel.create(:name => type)
      end
    end

    def self.down
      drop_table :job_levels
    end
  end