diaspora/db/migrate/20110729045734_add_full_name_to_profile.rb
2011-08-17 14:18:51 -07:00

29 lines
977 B
Ruby

class AddFullNameToProfile < ActiveRecord::Migration
class Profile < ActiveRecord::Base; end
def self.up
add_column :profiles, :full_name, :string, :limit => 70
add_index :profiles, :full_name
add_index :profiles, [:full_name, :searchable]
remove_index :profiles, [:first_name, :last_name, :searchable]
remove_index :profiles, [:first_name, :searchable]
remove_index :profiles, [:last_name, :searchable]
if Profile.count > 0
if postgres?
execute("UPDATE profiles SET full_name=LOWER(first_name || ' ' || last_name)")
else
execute("UPDATE profiles SET full_name=LOWER(CONCAT(first_name, ' ', last_name))")
end
end
end
def self.down
remove_index :profiles, :column => :full_name
remove_column :profiles, :full_name
add_index :profiles, [:first_name, :searchable]
add_index :profiles, [:last_name, :searchable]
add_index :profiles, [:first_name, :last_name, :searchable]
end
end