加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – carrierwave thumb问题

发布时间:2020-12-17 01:20:47 所属栏目:百科 来源:网络整理
导读:有人提出这个问题,但没有给出答案……我遇到了同样的问题. 我正在使用carrierwave上传文件一切都很好,直到我想创建拇指 图像直接保存在tmp中,但保持相同的大
有人提出这个问题,但没有给出答案……我遇到了同样的问题.

我正在使用carrierwave上传文件一切都很好,直到我想创建拇指

图像直接保存在tmp中,但保持相同的大小…

我的avatar_uploader.rb文件如下所示:

class AvatarUploader < CarrierWave::Uploader::Base
include CarrierWave::RMagick
storage :file
def store_dir
   "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
version :thumb do
  process :resize_to_limit => [200,200]
end

我的观点如下:

<% for image in @posts %>
<%= image_tag image.avatar_url(:thumb) if image.avatar? %>
<%= image.title %>
<% end %>

当我不包括(:拇指)时,我看到完整的图像……但是当我包含(:拇指)时,我收到以下错误:

Version thumb doesn't exist!

下面是我的模型设置

class Post < ActiveRecord::Base
  attr_accessible :comments,:frame,:title,:twitter,:avatar
  belongs_to :user
  mount_uploader :avatar,AvatarUploader
end

我可以看到创建了一个tmp目录,但图片没有调整大小…我已经安装了imagemagick和rmagick ……

谢谢

解决方法

我想您可能想要重新创建版本,因为您在上传其他文件后可能会为某些图像创建拇指大小.
image.avatar.url(:thumb)

上面的语法很好

要重新创建版本,请尝试运行

image.avatar.recreate_versions!

在你可能会失踪的所有头像上.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读