gpt4 book ai didi

ruby-on-rails-3 - 你如何拥有一个外部的默认 Gravatar 并且实际上可以正确调整大小?

转载 作者:行者123 更新时间:2023-12-01 04:11:30 26 4
gpt4 key购买 nike

实现 头像 在我的 Rails3 应用程序中,我使用的是 gravatar_image_tag gem 中的助手,但在混合 2 个配置选项时遇到问题:

  • 如果用户的电子邮件中没有附加头像,则会呈现默认图像;但我希望它引用 外部 文件(例如,http://www.iconfinder.com/ajax/download/png/?id=43350&s=128 而不是 :identicon 或其他)
  • 我也希望图像是 调整大小 飞到,比方说 50px。

  • 独立地,这两个选项都按预期工作,但是当我把它们放在一起时:

    def gravatar_for(user, options = { :default => 'http://www.iconfinder.com/ajax/download/png/?id=43350&s=128', :size => 50 })
    gravatar_image_tag(user.email.downcase, :alt => user.full_name,
    :class => 'gravatar',
    :gravatar => 选项)
    结尾

    未应用 size 选项,gravatar 以全尺寸(在本例中为 128px)呈现。

    我做错了什么,或者我怎样才能实现这种组合?

    最佳答案

    Gravatar 不会为您调整默认图像的大小。我认为如果 ulr 没有找到您给它的电子邮件的重力人,它只是 302 秒作为默认值。看起来 iconfinder url 中的“s”参数适用于您尝试抓取的大小,但该图标没有 50px 的大小,只有 128、256 和 512

    例子:

    http://www.iconfinder.com/ajax/download/png/?id=43350&s=256

    如果您想要一个 50px 和 80px 版本的图标,我会将它分别保存到您的应用程序 public/image 目录中作为 default_gravatar_50.png 和 default_gravatar_80.png 并像这样更改您的方法。

    结尾
    def gravatar_for(user, options = {})
    options = { :size => 50 }.merge(options)
    options[:default] = image_tag("default_gravatar_#{options[:size]}.png
    gravatar_image_tag(user.email.downcase,
    :alt => user.full_name,
    :class => 'gravatar',
    :gravatar => options)
    end

    或者,如果您在图标查找器上找到您喜欢的大小的图标,请像这样更改默认选项的设置。
    options[:default] = "http://www.iconfinder.com/ajax/download/png/?id=43350&s=#{options[:size]}"

    关于ruby-on-rails-3 - 你如何拥有一个外部的默认 Gravatar 并且实际上可以正确调整大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5885714/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com