モデルの一部のデータを新しいモデルに分割し、それらの間の関連付けを作成しています。
文字列属性として作成されたnew_model_id
toを追加し、次の移行を行いました。OldModel
NewModel
address
class RemoveAddressFromOldModel < ActiveRecord::Migration
def up
OldModel.where("address IS NOT NULL AND address != ''").each do |i|
j = NewModel.create(address: i.address)
i.new_model_id = j.id
i.save
end
remove_column :old_models, :address
end
def down
add_column :old_models, :address, :string
end
end
はNewModel.create
完全に機能し、適切なデータを取得していますが、データが入力さi.save
れていないため、機能していないようですold_models.new_model_id
。
これで何が欠けていますか?