如何将现有图像转换为具有现有关联的Paperclip对象

时间:2013-11-27 01:05:49

标签: ruby-on-rails paperclip

我正在重建Rails中的现有ASP应用程序。我有数千个图像存储在当前站点的服务器上,我想将其导入到我的新数据库中。问题是,照片​​每个都与我的用户创建的特定“事件”相关联。例如,事件ID#250的照片存储在../data/photos/events/250/250-1.jpg(250-2.jpg,250-3.jpg等)中。

旧数据库中的事件ID与新数据库相同,因为我直接从旧数据库导入它们。有没有办法导入这些旧照片并将它们与各自的活动相关联?感谢

1 个答案:

答案 0 :(得分:1)

Paperclip在数据库表中添加了一个额外的列来存储文件的位置。例如:

add_column :products, :photo_file_name, :string
add_column :products, :photo_content_type, :string
add_column :products, :photo_file_size, :integer
add_column :products, :photo_updated_at, :datetime

此外,:path

上有has_attached_file选项
has_attached_file :photo, :styles => { :small => "150x150>" },
  :url => "/assets/products/:id/:style/:basename.:extension",
  :path => ":rails_root/public/assets/products/:id/:style/:basename.:extension"

从本教程:http://railscasts.com/episodes/134-paperclip?view=asciicast

因此,您可以进行更改以匹配../data/photos/events/250/250-1.jpg

中的相同文件路径格式