В моей модели рельсов у меня есть какая-то система шаблонов. Я хочу, чтобы пользователи, редактирующие его, не делали случайных ошибок, поэтому я использую несколько простых валидаторов.Negate regex of validates_format_of
Они могут использовать маркеры, такие как ##user_id##
, которые будут заменены позже. Я хочу убедиться, что они не вводят что-то вроде ###user_id##
, которое содержит слишком много #
, поэтому в поле не должно быть ###
(или ####
).
class Template
validates_format_of :text, :with => /##user_id##/,
:message => "##user_id## must be present"
validates_format_of :text, :not_with => /###/,
:message => "Too many #"
end
К сожалению, нет :not_with
варианта ... есть ли возможность решить эту проблему с помощью :with
-regex или я должен идти отдельный validate
метод?
Я пробовал некоторые негативные перспективы, но, как есть (в основном) несколько ##
и только один ###
они всегда соответствуют одному из них.
работает как шарм, спасибо :-) – arnep
@arnep вы радушны. Рад помочь. – Kyle