我正在尝试验证用户的Twitter用户名并编写了自定义验证。然而,即使它似乎在irb会话中起作用,它也不起作用。这是我的代码
def twitter_user
begin
@t = Twitter.user :twitter
rescue Twitter::Error::NotFound => e
@t = nil
end
errors.add(:twitter, (" username does not exist")) if @t.nil?
end
我也试过这个:
def twitter_user
errors.add(:twitter, (" username does not exist")) unless begin Twitter.user :twitter
rescue Twitter::Error::NotFound => e
end
end
即使twitter用户名有效,也会出现此错误。有谁能解释为什么?感谢帮助。
编辑:我把它缩小到传递的参数:twitter,不是来自用户的输入。如何获取用户传递的值?答案 0 :(得分:0)
您必须在模型中添加验证方法
代表:
validate :user_is_exist
def user_is_exist
errors.add(:twitter, (" username does not exist")) if @t.nil?
end