标签: carrierwave

Rails 4使用carrierwave进行多个图像或文件上传

如何使用Rails 4和CarrierWave从文件选择窗口上传多个图像?我有一个post_controllerpost_attachments模型.我怎样才能做到这一点?

有人能提供一个例子吗?有一个简单的方法吗?

carrierwave ruby-on-rails-4

86
推荐指数
4
解决办法
7万
查看次数

未定义的方法`image_will_change!' Heroku上的CarrierWave

我有一个安装Carrierwave上传器的简单模型.一切都在开发中工作正常,但我得到一个未定义的方法"image_will_change!" heroku上的错误.

class Receipt < ActiveRecord::Base
  mount_uploader :image, ImageUploader
end

class ImageUploader < CarrierWave::Uploader::Base
  storage :fog
  def store_dir
    "receipts/saved"
  end
end
Run Code Online (Sandbox Code Playgroud)

根据Carrierwave Wiki,我也正确设置了cache_dir.

receipt.image = File.open "public/images/test.jpg" #works fine in development, fails in heroku
Run Code Online (Sandbox Code Playgroud)

heroku ruby-on-rails-3 carrierwave

59
推荐指数
3
解决办法
2万
查看次数

如何在销毁记录时使carrierwave删除文件?

我正在使用carrierwave gem上传文件.

我已经构建了一个系统,供用户将图像标记为不合适,并且管理员可以删除图像.据我所知,在图像上调用destroy只会从表中删除路径名.

有没有办法让carrierwave实际删除文件本身?或者当我销毁图像路径时,rails会自动删除文件吗?

ruby ruby-on-rails carrierwave

55
推荐指数
2
解决办法
7万
查看次数

Rails 3 paperclip vs carrierwave vs dragonfly vs attachment_fu

我正在努力将Rails 2.3.11,Ruby 1.9.2应用程序升级到Rails 3.0.10,并且attachment_fu不再有效.

我正在寻找更改为paperclip,carrierwave或dragonfly的文件上传,或者可能是raails 3兼容,维护版本的attachment_fu.

哪些选项在性能方面最好用,维护得多好,从attachment_fu升级是多么容易,也许它会与Rails 3.1兼容?每个人的主要优点和缺点是什么?

任何见解将不胜感激.

attachment-fu paperclip ruby-on-rails-3 carrierwave dragonfly-gem

52
推荐指数
2
解决办法
2万
查看次数

在视图中显示Carrierwave文件名

我试图在Rails erb模板中显示Carrierwave附件的文件名.以下不起作用:

<%= @page.form.filename %>
Run Code Online (Sandbox Code Playgroud)

这似乎与文档一致.需要一些额外的步骤吗?

我的页面模型如下所示:

class Page < ActiveRecord::Base

  mount_uploader :form, FormUploader

end
Run Code Online (Sandbox Code Playgroud)

表单上传器如下所示:

class FormUploader < CarrierWave::Uploader::Base

  storage :file

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

  def extension_white_list
    %w(pdf)
  end

end
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails ruby-on-rails-3 carrierwave

50
推荐指数
6
解决办法
5万
查看次数

使用Carrierwave从Rails控制台上载远程文件URL

我只是想知道如何在Rails控制台中使用Carrierwave上传远程文件URL.

我试了以下没有任何运气.我认为它不处理上传器?

user = User.first
user.remote_avatar_url = "http://www.image.com/file.jpg"
user.save
Run Code Online (Sandbox Code Playgroud)

非常感谢

ruby-on-rails carrierwave ruby-on-rails-3.2

35
推荐指数
3
解决办法
2万
查看次数

Carrierwave,MiniMagick - NoMethodError:nil的未定义方法`size':NilClass

在暂存时,我在通过carrierwave和minimagick上传和调整图像大小时面临以下错误.在当地一切正常.

carrierwave(0.9.0)mini_magick(3.7.0)

irb(main):003:0> PicturePost.create(remote_content_url: 'http://www.imagpress.com/img/slider/slider_1.jpg')
NoMethodError: undefined method `size' for nil:NilClass
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/mini_magick-3.7.0/lib/mini_magick.rb:24:in `choose_processor'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/mini_magick-3.7.0/lib/mini_magick.rb:64:in `mogrify?'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/mini_magick-3.7.0/lib/mini_magick/image.rb:360:in `run_command'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/mini_magick-3.7.0/lib/mini_magick/image.rb:171:in `valid?'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/mini_magick-3.7.0/lib/mini_magick/image.rb:140:in `create'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/mini_magick-3.7.0/lib/mini_magick/image.rb:48:in `read'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/mini_magick-3.7.0/lib/mini_magick/image.rb:111:in `block in open'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/mini_magick-3.7.0/lib/mini_magick/image.rb:110:in `open'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/mini_magick-3.7.0/lib/mini_magick/image.rb:110:in `open'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/carrierwave-0.9.0/lib/carrierwave/processing/mini_magick.rb:260:in `manipulate!'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/carrierwave-0.9.0/lib/carrierwave/processing/mini_magick.rb:176:in `resize_to_fill'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/carrierwave-0.9.0/lib/carrierwave/uploader/processing.rb:85:in `block in process!'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/carrierwave-0.9.0/lib/carrierwave/uploader/processing.rb:81:in `each'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/carrierwave-0.9.0/lib/carrierwave/uploader/processing.rb:81:in `process!'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/carrierwave-0.9.0/lib/carrierwave/uploader/callbacks.rb:18:in `block in with_callbacks'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/carrierwave-0.9.0/lib/carrierwave/uploader/callbacks.rb:18:in `each'
9 levels...
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/carrierwave-0.9.0/lib/carrierwave/uploader/download.rb:65:in `download!'
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/carrierwave-0.9.0/lib/carrierwave/mount.rb:353:in `remote_url='
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/carrierwave-0.9.0/lib/carrierwave/mount.rb:203:in `remote_content_url='
from /home/deploy/apps/staging/blog/shared/bundle/ruby/1.9.1/gems/carrierwave-0.9.0/lib/carrierwave/orm/activerecord.rb:44:in `remote_content_url='
from …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails ruby-on-rails-3 carrierwave minimagick

34
推荐指数
2
解决办法
9632
查看次数

carrierwave - rails 3.1- undefined method:image_will_change

我收到一个看起来像这样的错误:

undefined method `post_image_will_change!' for #<Post:0xf4e9184>
app/controllers/posts_controller.rb:43:in `new'
app/controllers/posts_controller.rb:43:in `create'
Run Code Online (Sandbox Code Playgroud)

我把它包含在我的"帖子"模型中:

 attr_accessible :title, :name, :content, :post_image
 mount_uploader :post_image, PostImageUploader
Run Code Online (Sandbox Code Playgroud)

并在_form.html.erb我添加了:

 :html =>  { :multipart => true }
Run Code Online (Sandbox Code Playgroud)

我看了CarrierWave Error,但这对我没有帮助.

什么产生错误的线索?我已经迁移了数据库等等(紧跟载波的railscasts指南......)

railscasts carrierwave ruby-on-rails-3.1

32
推荐指数
3
解决办法
2万
查看次数

在Carrierwave中重新处理图像

假设我的模型有一个图像,:thumb客户想要:tiny:nano缩略图.

如何使用rake任务重新处理所有现有图像?

我发现了一个rake任务,我认为会这样做https://gist.github.com/777788但它给了我错误.

rake ruby-on-rails carrierwave ruby-on-rails-3.1

31
推荐指数
1
解决办法
8016
查看次数

Carrierwave; 多个上传者还是只有一个?

我有一个帖子模型和一个播客模型.两个模型都有一个标题为:image的属性.我正在使用一个Carrierwave上传器(名为ImageUploader)来处理这两个模型.在我投入生产之前,我有两个问题.

愚蠢的问题:

当它们的文件附件具有相同的属性名称时,可以对两个不同的模型使用相同的上传器吗? 抱歉,如果这看起来很明显

主要问题:

我想创建每个博客文章图像的三个版本(拇指,大,棕褐色),每个播客图像(拇指)只有1个版本.

我现在需要使用两个上传器,还是可以使用我已经使用的那个命名空间?

它似乎很明显.我可能已经写了第二个上传者,它带我去问这些问题

ruby-on-rails ruby-on-rails-3 carrierwave

30
推荐指数
1
解决办法
5904
查看次数