Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment définir une contrainte unique sur une colonne de table MySQL dans Ruby on Rails 3 ?

Ajoutez une contrainte unique à la base de données elle-même en utilisant :

add_index :my_models, :my_column_name, unique: true

... via une migration (et vous voudrez peut-être faire en sorte que my_column_name n'accepte pas non plus de valeurs nulles :

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