如何添加unique:true到现有列

时间:2014-11-17 11:00:53

标签: ruby-on-rails-4 migration

我通过迁移向表中添加了一列。它生成了一个迁移文件,我添加了以下内容。然后迁移。添加后,我意识到添加忘记唯一:真正的迁移。如何将unique: true添加到此迁移文件中。语法请。

迁移中

def change
  add_column :tasks, :position, :integer
end

1 个答案:

答案 0 :(得分:0)

删除旧索引并使用新约束添加它:

def change
  remove_index :editabilities, [:user_id, :list_id]
  add_index :editabilities, [:user_id, :list_id], unique: true
end

(信用:我直接从Baldrick的回答中提到了这个答案here。在你投票给我之前向他投票;))