我正在研究Michael的Rails教程,我还添加了一些代码来显示用户的Gravatar图像。但它不显示。
这是我的用户助手
module UsersHelper
# Returns the Gravatar (http://gravatar.com/) for the given user.
def gravatar_for(user)
gravatar_id = Digest::MD5::hexdigest(user.email.downcase)
gravatar_url = "https://secure.gravatar.com/avatar/#{gravatar_id}"
image_tag(gravatar_url, alt: user.name, class: "gravatar")
end
end这是我的show.html.erb
<% provide(:title, @user.name) %>
<div class="row">
<aside class="col-md-4">
<section class="user_info">
<h1>
<%= gravatar_for @user %>
<%= @user.name %>
</h1>
</section>
</aside>
</div>
这是我检查元素时的代码
<img alt="humber" class="gravatar" src="https://secure.gravatar.com/avatar/8e92292186fbb306e253b08d0f3eb993">
humber这是图像
发布于 2016-07-06 15:00:26
您的代码是正确的,可能您正在使用的用户没有电子邮件,或者电子邮件没有一个图像在凹版头像。我建议您验证用户是否有电子邮件。
def gravatar_for(user)
if user.email?
gravatar_id = Digest::MD5::hexdigest(user.email.downcase)
gravatar_url = "https://secure.gravatar.com/avatar/#{gravatar_id}"
image_tag(gravatar_url, alt: user.name, class: "gravatar")
else
image_tag("/img/avatar_default.png", alt: user.name, class: "gravatar")
end
end发布于 2016-09-16 17:10:15
您可能在教程中做了一项练习,并编写了自定义类来隐藏图像。
img {
display: none;
}发布于 2016-08-22 04:50:53
嗯……我尝试添加一个图像标记,并向其添加散列以查看它是否呈现(请删除此标记,并在其工作后使用gravatar_for )。它做到了,下面是我改进gravatar_for方法的步骤。我希望这能帮上忙。
https://stackoverflow.com/questions/38222989
复制相似问题