迁移 - 如何将UNIQUE约束添加到已填充的表中?

时间:2018-04-25 16:53:49

标签: mysql ruby-on-rails ruby migration

我有一个技术人员表,其中只包含生产中的名称和时间戳列,但现在我需要将其用作设计模型。

 class Technician < ActiveRecord::Base
    validates_presence_of   :name
    validates_uniqueness_of :name
 end

使用'rails generate devise technician'让我进行了迁移,只需要让我的技术人员为设计模型建模。

class AddDeviseToTechnicians < ActiveRecord::Migration
  def change
    change_table(:technicians) do |t|
      ## Database authenticatable
      t.string :email,              null: false, default: ""
      t.string :encrypted_password, null: false, default: ""
    end
  end
end

但我无法迁移,因为电子邮件是&{39; unique: true&#39;专栏,也不放弃我的技术人员表。我该怎么办?

我在考虑将每个技术人员的电子邮件字段设置为:name_attribute + "@email.com",但最好的方法是什么? 我使用的是MYSQL数据库。

0 个答案:

没有答案