Gravatar って何?
様々な方が書かれているので、本記事では、詳しくは書きません。
slack.com, github.com
様々なところで活用されています。
Rails で Gravatar を使ってみる
公式のサンプルコード: https://ja.gravatar.com/site/implement/images/ruby/
require 'digest/md5'
# email に含まれる大文字を、小文字にする
email_downcase = email.downcase
# MD5値を取得
hash = Digest::MD5.hexdigest(email_downcase)
# URLを作成
image_src = "https://www.gravatar.com/avatar/#{hash}"
# URLを作成 (デフォルトと、レーティングをした場合)
image_src = "https://www.gravatar.com/avatar/#{hash}?r=g&d=mp"
# == Schema Information
#
# Table name: users
#
# id :bigint(8) not null, primary key
# email :string not null <- not null制約も設けているので、下で1行で書いてますが、丁寧に書いてあげた方がいいと思います。
#
require 'digest/md5'
class User < ApplicationRecord
def avatar_url
"https://www.gravatar.com/avatar/#{Digest::MD5.hexdigest(self.email.downcase)}?r=g&d=mp"
end
end
様々なURLパラメータ
1. レーティング
rating または、 r で、 映画にもあるレイティングシステムが用意されている。
g (General audiences?) : 誰が見ても大丈夫(本当か?)。
pg (Parental guidance suggested?) : 低俗なジェスチャー、挑発的な服装をし、軽度の暴力が含んまれるコンテンツである可能性がある。
r (Restricted?) : 日本語にするのが厳しいので、原文: may contain such things as harsh profanity, intense violence, nudity, or hard drug use
x (Extreme?) : 日本語にするのが厳しいので、原文: may contain hardcore sexual imagery or extremely disturbing violence.
通常使うのは、 g で、 r=g とするのが良いのではないでしょうか。
2. デフォルトの画像
default または、 d* で、gravatar.comにて登録されていないemailだった場合に返却する画像ファイルのURL。
urlでの指定の他に、
mp (mystery-person) :
identicon :
monsterid :
retro :
robohash :
が指定できます。
API のドキュメントについて
Image Requests - ja.gravatar.com
gravatarのアイコンを使いたい時のURL
非公式です。
https://www.gravatar.com/avatar
ちなみに
gravatar.com 利用しやすくするための GEM もあります