有沒有辦法區分url和文件路徑。如何在Rails中比較url和文件路徑
例如
user.avatar.url
return -> '/home/pic.png' #if no image url is present
return -> 'https://...' #if image url is present.
有沒有一種方法可以檢查返回的URL是鏈接還是文件路徑?
有沒有辦法區分url和文件路徑。如何在Rails中比較url和文件路徑
例如
user.avatar.url
return -> '/home/pic.png' #if no image url is present
return -> 'https://...' #if image url is present.
有沒有一種方法可以檢查返回的URL是鏈接還是文件路徑?
退房http://railscasts.com/episodes/244-gravatar
您可以檢查用戶是否具有使用present?
方法檢查一個avatar_url。如果確實如此,則返回URL,否則恢復爲默認圖像。
def avatar_url(user)
if user.avatar_url.present?
user.avatar_url
else
default_url = "#{root_url}images/guest.png"
gravatar_id = Digest::MD5.hexdigest(user.email.downcase)
"http://gravatar.com/avatar/#{gravatar_id}.png?s=48&d=#{CGI.escape(default_url)}"
end
end
例如,在回形針:
user.avatar.exists?
uri = URI.parse(user.avatar.url)
if uri.scheme == 'http' or uri.scheme == 'https'
# It is a web URL
elsif File.file?(user.avatar.url)
# It is a file
else
# Unknown
end