Ruby on Rails image_tag不显示Carrierwave图像

时间:2016-08-06 08:26:18

标签: ruby-on-rails carrierwave

我试图让用户无需运气就能看到个人资料图片。我已经将<input> gem与carrierwave一起安装在gem文件中。

图片上传器

mini_magick

user.rb

class AvatarUploader < CarrierWave::Uploader::Base

  include CarrierWave::MiniMagick

  storage :file

  def store_dir
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
  end

  version :thumb do
   process :resize_to_fit => [80, 80]
  end

  def extension_white_list
     %w(jpg jpeg gif png)
   end

show.html.erb

class User < ActiveRecord::Base
  ...

  mount_uploader :avatar, AvatarUploader
end

控制器(正在显示alart,而不是图像)

...

<%= image_tag @user.avatar.url(:thumb) if @user.avatar?%>

<%= link_to "Edit", edit_user_path(@user)%> 

1 个答案:

答案 0 :(得分:0)

哇这里有一个很棒的社区!太有帮助了!实际上我不得不去reddit得到该死的答案。我相信将来会有人会遇到同样的问题,不幸的是会先找到这个网站寻找答案。对我来说有用的是安装imagemagick如果你正在使用Mac,并安装了自制软件,那么它就是brew install imagemagick。重启你的服务器,它应该工作。