Dodaj unikalne ograniczenie do samej bazy danych za pomocą:
add_index :my_models, :my_column_name, unique: true
...poprzez migrację (i możesz chcieć, aby my_column_name również nie akceptowały żadnych wartości null:
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