Rails 5.0を使用しています。それは、down
のメソッドはup
の逆の順序でなければならないとRailsガイドと私のチュートリアルで言います。例えば :移行ファイルで、「ダウン」部分のメソッドは、「上」から逆の順序にする必要がありますか?
class AlterUsers < ActiveRecord::Migration[5.0]
def up
rename_table("users", "admin_users")
add_column("admin_users", "username", :string, :limit =>25, :after => "email")
change_column("admin_users", "email", :string, :limit => 100)
end
def down
change_column("admin_users", "email", :string, :default => '', :null => false)
remove_column("admin_users", "username")
rename_table("admin_users", "users")
end
end
注down
のメソッドは、それがup
で実行された順序とは逆に現れます。すなわち、が最後にup
から実行されたため、down
で最初に実行されます。
down
は、データベースを以前の状態に戻すことを許可する目的で、すべてup
を元に戻す必要があることを理解しています。 down
のメソッドが、実行された順序と逆の実行が必要な理由があったのかどうか、私はちょうど疑問に思っていましたup
?
あまり感謝してくれてありがとうございました。 – the12