Пользовательская проверка Rails на основе регулярного выражения?

У меня есть следующее регулярное выражение, которое я использую в моем routes.rb для / type-in-something- здесь

# A-Z, a-z, 0-9, _ in the middle but never starting or ending in a _
# At least 5, no more than 500 characters

Это хорошо работает в маршрутах:

match ':uuid' => 'room#show', :constraints => { :uuid => /[A-Za-z\d]([-\w]{,498}[A-Za-z\d])?/ }

Я хочу, чтобы это было также для проверки, чтобы не создавались недействительные записи. Поэтому я добавил в room.rb следующее:

validates_format_of :uuid, :with => /[A-Za-z\d]([-\w]{,498}[A-Za-z\d])?/i, :message => "Invalid! Alphanumerics only."

Но это validates_format_of не работает, и вместо добавления ошибки позволяет сохранить запись.

Есть идеи, что не так?

Спасибо

10
задан AnApprentice 6 October 2011 в 21:38
поделиться