Fügen Sie eine Datenbankspalte mit Rails-Migration hinzu und füllen Sie sie basierend auf einer anderen Spalte auf
Ich schreibe eine Migration, um einer Tabelle eine Spalte hinzuzufügen. Der Wert der Spalte hängt vom Wert von zwei weiteren vorhandenen Spalten ab. Was ist der beste / schnellste Weg, dies zu tun? Momentan bin ich mir aber nicht sicher, ob es der beste Weg ist, da die Gruppentabelle sehr groß sein kann.
class AddColorToGroup < ActiveRecord::Migration
def self.up
add_column :groups, :color, :string
Groups = Group.all.each do |g|
c = "red" if g.is_active && is_live
c = "green" if g.is_active
c = "orange"
g.update_attribute(:type, c)
end
end
def self.down
end
end