验证没有允许的URL

时间:2014-08-28 12:38:42

标签: ruby-on-rails validation

我需要用户不能在输入中引入URL。

最好的方法是什么?也许正则表达式?

谢谢!

1 个答案:

答案 0 :(得分:0)

不确定是否真的是最好的代码,但可以尝试这样的事情:

validates :does_not_contain_url


private

def does_not_contain_url
  text_field.split(/\s/).each do |part|
    begin
      uri = URI.parse(part)
      self.errors.add :text_field, "No URLS allowed" if %w(http https).include?(uri.scheme)
    rescue URI::BadURIError
      self.errors.add :text_field, "No URLS allowed"
    end
  end

end