如何在Rails 3.0中编写数据库特定的自定义验证器?

我需要编写一个自定义验证器来检查数据库中是否存在记录。有点像验证唯一性的反面,但是我找不到能够在内置验证器中实现我想要的东西。 我正在尝试做的是检查引用者是否存在于Users表中。如果引用者的用户名是“testuser”,我想在Users表中检查“testuser”是否确实存在。 我创建了一个自定义验证器:
class ReferrerExistsValidator < ActiveModel::EachValidator
但是我不确定如何继续从那里的数据库获取细节,任何指针?     
已邀请:
编写以下验证类
 class ReferrerExistsValidator < ActiveModel::EachValidator  
   def validate_each(object, attribute, value)  
     unless User.find_by_username(value)  
       object.errors[attribute] << (options[:message] || "referrer does not exist")  
     end  
   end  
 end 
将以下内容添加到相关模型中   
validates :referrer_exists => true
    
我是铁杆/编码的新手,我可能会误解你,但你不能做一些像:
@user.each do |user|
  unless @user.username == current_user.referral_name
    :alert "no user found"
  else whatever
  end
end
编辑:这根本不起作用 - 忽略它,让我考虑一下;)     

要回复问题请先登录注册