Rails プロジェクトで、あるテーブルから別のテーブルにデータを移行しようとしています。元のテーブルを作成するときは、(スニペット) を使用します。
create_table :my_original_table do |t|
#OTHER COLUMNS HERE
t.integer :first_record_pub
end
次に、移行先の 2 番目のテーブルを作成するときに、次を使用します。
create_table :my_second_table do |t|
#OTHER COLUMNS HERE
t.integer :my_pub
end
最後に、実際のデータを移行するときは、次を使用します。
original_value = MyOriginalTable.all
original_value.each do |s|
new_first_record = MySecondTable.new
#OTHER DATA MIGRATIONS HERE
new_first_record.my_pub = s.first_record_pub
new_first_record.save
end
移行する他のすべての列 (コメントアウトしたもの) は完全に移行されます。ただし、移行された my_second_table では、my_pub 列に空白のエントリがいくつかあり (元のテーブルの一部のエントリが空白であるため、予期されます)、他のエントリの値は単に '1' です。何らかの理由で、正しい first_record_pub 値が正しく移行されませんでした。
この問題を解決する方法について誰かアイデアがありますか? ありがとう!