Я видел документы / сайты показывают , что пользовательские валидаторы должны идти в /lib
или /lib/validators
директории проекта. Я обнаружил (читая ответ на другой пост), что они, похоже, только работают config/initializers
. Кто-нибудь знает или имеет указатель на официальную документацию, которая показывает, где должны жить пользовательские валидаторы?
ruby-on-rails
validation
customvalidator
Дэниел Д.
источник
источник
Ответы:
Если вы разместите свои собственные валидаторы,
app/validators
они будут автоматически загружены без необходимости изменять вашconfig/application.rb
файл.источник
spring stop
мне нужно было в Rails 5.2, иначе не подхватили.Если вы добавите это в свой файл /config/application.rb:
Затем Rails автоматически загрузит ваши валидаторы при запуске (точно так же, как / config / initializers /), но вы сохраните чистую структуру, когда ваши валидаторы будут находиться в одном красивом, хорошо названном месте.
источник
config.autoload_paths += %W(#{config.root}/lib/validators/)
lib/validators
кажется, безусловно, самым чистым. Однако вам может потребоваться загрузить их до ваших моделей, возможно, из инициализатора.источник
Вот официальные документы о пользовательских проверках. AFAIK это хорошая практика, чтобы держать их в соответствующих моделях.
источник