Paperclip:如何在Rails控制台中存储图片?

时间:2011-01-13 12:52:58

标签: ruby-on-rails ruby-on-rails-3 console paperclip

我尝试将本地图像存储在rails控制台中。

因为我的本地存储中有很多图片(我使用爬虫来下载大量的图片),我想将它们存储到数据库中,利用回形针来做一些图像工作,比如缩略图等。 如果我使用网页逐个将新图片保存到数据库,则会耗费大量时间。所以我想在rails console(一些代码)中找到一种可以批量保存图片进入数据库的方法。

4 个答案:

答案 0 :(得分:54)

进一步澄清@andrea的回答:

YourPaperclippedModelHere.new(:your_paperclip_field => File.new(path, "r"))

因此,如果您的模型名为Image,而回形针字段为数据:

Image.new(:data => File.new(path_to_your_file, "r"))

答案 1 :(得分:18)

如果这是型号:

class User < ActiveRecord::Base
  has_attached_file :avatar
end

然后以下内容应该在控制台上运行:

>> User.create(:avatar => File.open('/path/to/image.jpg', 'rb'))

答案 2 :(得分:2)

我不知道这是不是你想要的......但是 从控制台保存回形针资产 您可以简单地使用File实例。 酸当量

Image.new :data=>File.new("/path/to/image.jpg","r")

答案 3 :(得分:1)

延迟回答但希望它能为其他人服务。 你需要包括。

File.new("#{Rails.root}/public/images/default_avatar.png", "r")