テーブルに列を追加するための移行を書いています。列の値は、2つの既存の列の値に依存します。これを行う最善の方法は何ですか? 現在、私はこれを持っていますが、グループテーブルが非常に大きくなる可能性があるため、これが最良の方法かどうかはわかりません。Railsの移行でデータベース列を追加し、別の列に基づいてデータを入力してください
をまたは移行には、おそらくこのようないくつかのSQLを行う必要があるだろう:
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
アップダウンでは何もしなかったのはなぜですか? – Robert
これはちょうど私がここで編集中に行ったタイプミスです;) – user1404536