首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >has_one_attached时的默认附件

问has_one_attached时的默认附件
EN

Stack Overflow用户
提问于 2018-03-30 18:06:28
回答 2查看 2K关注 0票数 4

我有一个使用ActiveStorage的带有has_one_attached :avatar的用户模型。头像是可选的,但当它不存在时,我想要显示一个默认值。我将所有附件存储在亚马逊S3上,并且更喜欢将默认设置存储在那里。

如果我能在默认的头像上使用不同的方法,我会更喜欢。

代码语言:javascript
复制
user.avatar.variant(resize: "100x100")

对如何实现这一点有什么建议吗?我可以创建某种没有链接到任何特定记录的默认附件,并在头像不存在时使用它吗?

EN

回答 2

Stack Overflow用户

发布于 2018-06-12 20:37:56

不附加默认图像,只需检查是否附加了图像,如果没有,则显示默认图像。在这种情况下,present?方法将不起作用,请改用attached?。

代码语言:javascript
复制
def display_avatar(user)
  if user.avatar.attached?
    user.avatar
  else
    'default.png'
  end
end
票数 1
EN

Stack Overflow用户

发布于 2018-03-30 20:52:31

有两种方法,

  1. Default

在模型中使用此选项(假设您使用的是回形针gem)

:default_url => "/assets/:style/missing.jpeg“

2.Manual

您必须添加helper方法,如下所示

代码语言:javascript
复制
  def avatar_check user
      if user.avatar.image.present?
        image_tag user.image_url :thumb
      else
        image_tag 'default.jpg'
      end
    end

将default.jpg保存在资源中。

在下面视图调用中,

代码语言:javascript
复制
User.all.each do |u|
= avatar_check u

我不确定是不是变种

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49572425

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档