Rails看不到我的自定义验证器

mba*_*jur 3 ruby-on-rails ruby-on-rails-3

我正在尝试在Rails 3应用程序中使用自定义验证器。这是我的文件:

app / validators / video_validator.rb

class VideoValidator < ActiveModel::Validator
  def validate(record)
    videoInfo = VideoInfo.new(record.video_url)
    if !videoInfo.valid?
      record.errors[:base] << "Some error message."
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

app / models / user_video.rb

class UserVideo < ActiveRecord::Base
  validates_with VideoValidator
end
Run Code Online (Sandbox Code Playgroud)

现在,当我尝试newuser_videos脚手架控制器执行操作时,我得到的只是这个错误:

路由错误未初始化的常量UserVideo :: VideoValidator

我看过很多关于如何创建自定义验证器的教程,但我仍然找不到我做错了什么。如果有任何提示和建议,我将不胜感激:)

Sam*_*ron 6

是在自动加载配置中配置的验证程序路径。您可以在这里看一下 Rails 3 Custom Validator Problem

还要确保重新启动服务器:)

  • 是的,就是这样!我遇到了一些奇怪的错误,没有任何堆栈跟踪,但是我忘记了有时强烈建议重新启动服务器:)谢谢! (2认同)