用户删除当前图像时渲染默认图像

时间:2018-05-30 06:10:57

标签: ruby image rubygems carrierwave

我正在尝试在用户删除当前图像时渲染默认图像。我使用载波宝石来上传图像。这是我的application.helper.rb代码。 Application.helper.rb:

module ApplicationHelper

  def avatar(image)
    return '100_2.jpg' unless image

    image

  end

我将此代码用于渲染默认图像,但它不起作用。如何更改代码以呈现默认图像?

1 个答案:

答案 0 :(得分:0)

取决于此方法的结果是什么。它是一个链接?如果是这样,那么image_path方法可能有助于构建这样的链接:

module ApplicationHelper
  def avatar(image)
    image || image_path('100_2.jpg')
  end
end

或者您可能想provide a default url到您的上传者:

class MyUploader < CarrierWave::Uploader::Base
  def default_url(*args)
    ActionController::Base.helpers.asset_path("100_2.jpg")
  end
end