如何正确编写迁移命令

时间:2015-06-30 22:20:44

标签: ruby-on-rails

我想在我的表中添加一个数组字段。通常,我应该在第一次创建表时完成此操作:

t.string :names, array: true, default: []

现在我已经运行了迁移,你能否提供一个迁移命令来将这个字段添加到我的Recipe表中?

感谢。

2 个答案:

答案 0 :(得分:1)

add_column :names, array: true, default: []

答案 1 :(得分:1)

由于您已经运行了迁移,因此创建新迁移以将新列附加到表上是一种更好的技术,而不是重新运行现有迁移以避免与其他开发人员出现问题(尽管现在这可能不是你的担忧):

rails g migration add_names_to_recipes names:string

找到新创建的迁移并将以下内容附加到相关列:

class AddNamesToRecipes < ActiveRecord::Migration
  def change
    add_column :recipes, :names, :string, array: true
  end
end

最后,运行rake db:migrate