У меня есть следующий класс ruby:
class MyFormObject < FormObject
attribute :some_field
validates :some_field, presence: true
validate :my_custom_validation
def my_custom_validation
errors.add "Do_not_have_key","This error message is self contained, not linked to any field and no field prefix required"
end
end
Я хотел бы выполнить свою собственную логику проверки.Добавьте ошибки в коллекцию ошибок, но некоторые из них не привязаны ни к какому ключу или полю.Допустим, они зависят от положения Луны в момент выполнения проверки:)
Также мне хотелось бы, чтобы кто-то еще использовал мой класс и звонил:
errors.full_messages
Чтобы получитьповедение по умолчанию добавления ключа ошибки перед всеми ошибками, ожидайте "общие" / "не привязанные к полю".
Есть ли элегантный способ добиться такого поведения?И закройте решение / обходной путь что-либо в этом классе, и все потребители не знают, что есть «специальные» ошибки?