Ruby on Rails教程(第4版) 13.2.2 示例微博 微博样式没反应

Mac环境

Rails 5.1.4

ruby 2.4.1

bootstrap v3.3.7

 

------------------坑区-------------------

Ruby on Rails教程(第4版)

第13章 13.2.2 示例微博 微博样式没反应,如下图:

----------------------------------------

解决方法:

先把书本上的操作都正确做完,再看我的方法:

问题的根源是:gravatar_for方法获取头像地址时所给的图片大小定义过大。

打开项目中的/app/helpers/users_helper.rb

module UsersHelper
# 返回指定用户的 Gravatar
def gravatar_for(user, options = { size: 80 })
gravatar_id = Digest::MD5::hexdigest(user.email.downcase)
gravatar_url = "https://s.gravatar.com/avatar/8c9e1645a76724b2f0e3a289f485e8a9?s=80"
image_tag(gravatar_url, alt: user.name, class: "gravatar")
end
end

这里请看 gravatar_url = "https://s.gravatar.com/avatar/8c9e1645a76724b2f0e3a289f485e8a9?s=80",这里最后的一个参数80,就是控制头像的大小,此处为80,

由于这个参数过大,就会引起css排版出现撑开,把他改成50或者60都可以。

另外上面 options = { size: 50 } 这里改不改都可以,好像也控制不了大小;

还有一个地方也是 /app/views/microposts/_micropost.html.erb

link_to gravatar_for(micropost.user, size: 60) 这里的size: 60 也是控制不了大小,经我测试后目前为一能改变头像大小的只有gravatar_url 最后面的这个参数。

我修改成50后的效果就出来了

posted @ 2017-11-13 22:52  roy0524  阅读(258)  评论(0编辑  收藏  举报