提交 f73a05fb 编写于 作者: C Carlos Antonio da Silva

Refactor url methods a bit

Use if..else conditions instead of return guards.
Use _ for not used arguments when iterating.
Set the path variable directly instead of using an empty string and <<.
上级 8e49fa60
......@@ -8,14 +8,16 @@ module URL
class << self
def extract_domain(host, tld_length = @@tld_length)
return nil unless named_host?(host)
host.split('.').last(1 + tld_length).join('.')
host.split('.').last(1 + tld_length).join('.') if named_host?(host)
end
def extract_subdomains(host, tld_length = @@tld_length)
return [] unless named_host?(host)
parts = host.split('.')
parts[0..-(tld_length+2)]
if named_host?(host)
parts = host.split('.')
parts[0..-(tld_length + 2)]
else
[]
end
end
def extract_subdomain(host, tld_length = @@tld_length)
......@@ -23,15 +25,13 @@ def extract_subdomain(host, tld_length = @@tld_length)
end
def url_for(options = {})
path = ""
path << options.delete(:script_name).to_s.chomp("/")
path = options.delete(:script_name).to_s.chomp("/")
path << options.delete(:path).to_s
params = options[:params] || {}
params.reject! {|k,v| v.to_param.nil? }
params.reject! { |_,v| v.to_param.nil? }
result = build_host_url(options)
result << (options[:trailing_slash] ? path.sub(/\?|\z/) { "/" + $& } : path)
result << "?#{params.to_query}" unless params.empty?
result << "##{Journey::Router::Utils.escape_fragment(options[:anchor].to_param.to_s)}" if options[:anchor]
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册