Apply Blair Zajac's patch that fixes my botched migration (013). Closes #381.

Thanks, Blair!



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@322 a4c988fc-2ded-0310-b66e-134b36920a42
This commit is contained in:
lukemelia 2006-09-21 04:18:02 +00:00
parent 50211a3ebe
commit f3223c5474

View file

@ -3,12 +3,13 @@ class ConvertPreferences < ActiveRecord::Migration
class User < ActiveRecord::Base; has_one :preference; serialize :preferences; end
def self.up
ActiveRecord::Base.transaction do
@users = User.find(:all)
@users.each do |user|
user.create_preference
user.preference.date_format = user.preferences['date_format']
user.preference.week_starts = user.preferences['week_starts']
user.preference.show_number_completed = user.preferences['show_number_completed']
user.preference.show_number_completed = user.preferences['no_completed']
user.preference.staleness_starts = user.preferences['staleness_starts']
user.preference.show_completed_projects_in_sidebar = user.preferences['show_completed_projects_in_sidebar']
user.preference.show_hidden_contexts_in_sidebar = user.preferences['show_hidden_contexts_in_sidebar']
@ -19,22 +20,25 @@ class ConvertPreferences < ActiveRecord::Migration
end
remove_column :users, :preferences
end
end
def self.down
add_column :users, :preferences, :text
@users = User.find(:all)
@users.each do |user|
user.preferences = { "date_format" => "#{user.preference.date_format}",
"week_starts" => "#{user.preference.week_starts}",
"no_completed" => "#{user.preference.show_number_completed}",
"staleness_starts" => "#{user.preference.staleness_starts}",
"show_completed_projects_in_sidebar" => "#{user.preference.show_completed_projects_in_sidebar}",
"show_hidden_contexts_in_sidebar" => "#{user.preference.show_hidden_contexts_in_sidebar}",
"due_style" => "#{user.preference.due_style}",
"admin_email" => "#{user.preference.admin_email}",
"refresh" => "#{user.preference.refresh}"
}
user.save
ActiveRecord::Base.transaction do
add_column :users, :preferences, :text
@users = User.find(:all)
@users.each do |user|
user.preferences = { "date_format" => "#{user.preference.date_format}",
"week_starts" => "#{user.preference.week_starts}",
"no_completed" => "#{user.preference.show_number_completed}",
"staleness_starts" => "#{user.preference.staleness_starts}",
"show_completed_projects_in_sidebar" => "#{user.preference.show_completed_projects_in_sidebar}",
"show_hidden_contexts_in_sidebar" => "#{user.preference.show_hidden_contexts_in_sidebar}",
"due_style" => "#{user.preference.due_style}",
"admin_email" => "#{user.preference.admin_email}",
"refresh" => "#{user.preference.refresh}"
}
user.save
end
end
end
end