Hi there
I have a model that needs to get an extra field. So, I created a migration to add the field
add_column :my_models, :my_field, :string
This works fine as per usual. However, I want to populate the field with a value so I do this
MyModel.find(:all).each do |m| m.my_field = “value” puts m.my_field puts m.save m.reload puts m.my_field end
lower in the self.up part of the migration.
When I run the migration I get this output:
“value” true nil
I have confirmed that the field is populated in a before_filter by outputting the field value before it is saved. I have also confirmed that the ‘my_field’ field value is “value” in def after_save but, if I find an instance of MyModel from the db, I get my_field = nil.
Any ideas?
Ivor