Ruby on rails 如何在Rails 5中的现有表中添加新列?
我想在Rails 5中的一个表中添加一个新列。我最近使用以下方法重命名了一个列:Ruby on rails 如何在Rails 5中的现有表中添加新列?,ruby-on-rails,ruby,rails-migrations,ruby-on-rails-5,Ruby On Rails,Ruby,Rails Migrations,Ruby On Rails 5,我想在Rails 5中的一个表中添加一个新列。我最近使用以下方法重命名了一个列: rails g migration ChangeJobsTable 然后在2016080104312\u change\u jobs\u table.rb: class ChangeJobsTable < ActiveRecord::Migration[5.0] def change rename_column :jobs, :skills, :skills1 end end 它工作得很好
rails g migration ChangeJobsTable
然后在2016080104312\u change\u jobs\u table.rb
:
class ChangeJobsTable < ActiveRecord::Migration[5.0]
def change
rename_column :jobs, :skills, :skills1
end
end
它工作得很好,但是现在如果我还想添加一个新列skills2
,我需要这样做吗
class ChangeJobsTable < ActiveRecord::Migration[5.0]
def change
add_column :jobs, :skills2
end
end
class ChangeJobsTable
您忘记添加数据类型,下面是更新的迁移
class ChangeJobsTable < ActiveRecord::Migration[5.0]
def change
add_column :jobs, :skills2, :string
end
end
class ChangeJobsTable
您确实忘记了数据类型。您以后也可以通过控制台执行此操作:
rails g migration AddSkills2ToJobs skills2:string
这对我有效,您可以在模式中进行验证
rails g迁移将技能2添加到变更作业稳定技能2:string
rakedb:migrate
您走上了正确的轨道……走吧,我遇到了这个错误:rails被中止了!StandardError:发生错误,此迁移和所有后续迁移已取消:参数数量错误(给定2个,预期为3..4)是的,只需按照hgsongra(hitesh)指令操作即可。。
class ChangeJobsTable < ActiveRecord::Migration[5.0]
def change
add_column :jobs, :skills2, :string
end
end