Добавете уникално ограничение към самата база данни, като използвате:
add_index :my_models, :my_column_name, unique: true
...чрез миграция (и може да искате да накарате my_column_name да не приема също нулеви стойности:
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