Формат проверки Rails и замена любых других символов на дефисы? - PullRequest
0 голосов
/ 26 января 2011

У меня есть эта модель:

class Tag < ActiveRecord::Base

  # Validations
  validates :name, :presence => true, :uniqueness => true, :format => /[a-z0-9\+\-]+/

end

То, что я хочу, чтобы мое приложение делало, чтобы каждый символ, который не [a-z0-9\+\-], превратился в дефис. Это возможно и как? Спасибо.

1 Ответ

2 голосов
/ 26 января 2011

Вы можете использовать фильтр before для преобразования его перед проверкой ...

before_validation :convert_name

def convert_name
  self.name.gsub! /[^a-z0-9\+\-]/, '-'
end
...