discourse/db/migrate/20130625022454_change_ip_to_inet_in_views.rb
2017-07-28 10:20:09 +09:00

23 lines
482 B
Ruby

require 'ipaddr'
class ChangeIpToInetInViews < ActiveRecord::Migration
def up
table = :views
add_column table, :ip_address, :inet
execute "UPDATE views SET ip_address = inet(
(ip >> 24 & 255) || '.' ||
(ip >> 16 & 255) || '.' ||
(ip >> 8 & 255) || '.' ||
(ip >> 0 & 255)
);"
change_column table, :ip_address, :inet, null: false
remove_column table, :ip
end
def down
raise ActiveRecord::IrreversibleMigration
end
end