проверка
Встроенная проверка уникальности ActiveRecord не учитывает записи, удаленные ActsAsParanoid. Если вы хотите проверить уникальность только среди не удаленных записей, используйте макрос validates_as_paranoid в вашей модели. Затем вместо использования validates_uniqueness_of используйте validates_uniqueness_of_without_deleted. Это не позволит удаленным записям считаться с проверкой уникальности.
class Paranoiac < ActiveRecord::Base
acts_as_paranoid
validates_as_paranoid
validates_uniqueness_of_without_deleted :name
end
Paranoiac.create(:name => 'foo').destroy
Paranoiac.new(:name => 'foo').valid? #=> true
удачи