我知道这已被问过几次,但我仍然无法让它工作。
在我的模特中我有
class User < ActiveRecord::Base
require 'uri'
attr_accessible :website
validates :website, presence: true
end
我想做的就是检查它是否是有效的格式化网址。
当我在控制台中输入以下代码行时,它们都返回true
!!URI.parse('www.fake.com')
和
!!URI.parse('fake')
我如何将Simone的答案(A good way to validate urls)纳入我的模型以验证网址的格式?
def valid?(uri)
!!URI.parse(uri)
rescue URI::InvalidURIError
false
end
答案 0 :(得分:0)
class User < ActiveRecord::Base
require 'uri'
attr_accessible :website
validates :website, presence: true
validate :website_url_format_valid?
private
def website_url_format_valid?
uri = URI.parse(url)
uri.kind_of?(URI::HTTP)
rescue URI::InvalidURIError
false
end
end