Rails无法看到我的自定义验证器

时间:2012-09-20 09:34:27

标签: ruby-on-rails ruby-on-rails-3

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

应用/验证/ 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

应用/模型/ user_video.rb

class UserVideo < ActiveRecord::Base
  validates_with VideoValidator
end

现在,当我尝试从new脚手架控制器进行user_videos操作时,我得到的就是这个错误:

  

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

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

2 个答案:

答案 0 :(得分:4)

是autoload配置中配置的验证程序路径。你可以看看这里 的 Rails 3 Custom Validator Problem

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

答案 1 :(得分:0)

我想您需要在用户视频类

中包含VideoValidator