I am trying to migrate a Rails 3 app. I installed Rails v 5.1.5 using RVM. When trying db:migrate, I get the following.
rake aborted! StandardError: An error has occurred, all later migrations canceled:
Directly inheriting from ActiveRecord::Migration is not supported. Please specify the Rails release the migration was written for:
class SorceryCore < ActiveRecord::Migration[4.2]
Here is the Class Definition for Sorcerycore:
class SorceryCore < <%= migration_class_name %>
def change
create_table :<%= model_class_name.tableize %> do |t|
t.string :email, :null => false
t.string :crypted_password
t.string :salt
t.timestamps :null => false
end
add_index :<%= model_class_name.tableize %>, :email, unique: true
end
end
You have to specify the version in brackets like it says. Have you added any migrations since upgrading?
Example change from:
class SorceryCore < ActiveRecord::Migration
to
class SorceryCore < ActiveRecord::Migration[5.1]
You can add the version to all migrations by running this from your Rails root directory:
grep -rl ActiveRecord::Migration$ db | xargs sed -i "" "s/ActiveRecord::Migration/ActiveRecord::Migration[5.1]/g"
Add your migration version at last Like
class SorceryCore < ActiveRecord::Migration[5.1]
so here [5.1]
is your version so add version
if you don't know the version please check your previous migration, may you find there...
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With