Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie definiere ich eine eindeutige Einschränkung für eine Spalte einer MySQL-Tabelle in Ruby on Rails 3?

Fügen Sie der Datenbank selbst eine eindeutige Einschränkung hinzu, indem Sie Folgendes verwenden:

add_index :my_models, :my_column_name, unique: true

...durch eine Migration (und vielleicht möchten Sie auch dafür sorgen, dass my_column_name keine Nullwerte akzeptiert:

class CreateMyModels < ActiveRecord::Migration
  def change
    create_table :my_models do |t|
      t.string :my_column_name, null: false

      t.timestamps
    end

    add_index :my_models, :my_column_name, unique: true

  end
end