diff options
Diffstat (limited to 'db')
-rw-r--r-- | db/migrate/20120422150750_change_repositories_to_full_sti.rb | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/db/migrate/20120422150750_change_repositories_to_full_sti.rb b/db/migrate/20120422150750_change_repositories_to_full_sti.rb new file mode 100644 index 000000000..067d60256 --- /dev/null +++ b/db/migrate/20120422150750_change_repositories_to_full_sti.rb @@ -0,0 +1,17 @@ +class ChangeRepositoriesToFullSti < ActiveRecord::Migration + def up + Repository.connection.select_rows("SELECT id, type FROM #{Repository.table_name}").each do |repository_id, repository_type| + unless repository_type =~ /^Repository::/ + Repository.update_all ["type = ?", "Repository::#{repository_type}"], ["id = ?", repository_id] + end + end + end + + def down + Repository.connection.select_rows("SELECT id, type FROM #{Repository.table_name}").each do |repository_id, repository_type| + if repository_type =~ /^Repository::(.+)$/ + Repository.update_all ["type = ?", $1], ["id = ?", repository_id] + end + end + end +end |