在rails3中使用paperclip gem

时间:2013-01-11 05:01:08

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

在rails3中使用paperclip gem,有两个同时上传的图像副本,其中一个是空条目,另一个是数据库中的原始文件,因为我在localhost / phpmyadmin中检查过。此问题不必要地填充我的数据库。已经搜索了好几天。检查了许多关于多个图像的答案,但没有人提到这个问题。

我已按照此代码https://github.com/websymphony/Rails3-Paperclip-Uploadify

1 个答案:

答案 0 :(得分:0)

Paperclip还将实际图像数据上传到我数据库中的字段图像中。我不得不调整它以在我的数据库的image_file_name字段中保存文件名。

这是我的控制器,用于保存上传表单中的图像。

#paperclip replaces spaces with _
formatted_filename = params[:clothe][:image].original_filename
formatted_filename.gsub!(/\s/,'_')

#hook in image processing
#set type of upImg, formUpload (APIUpload, scrapeUpload, mobileUpload)
image = UploadImage.new(formatted_filename, Rails.root.to_s + '/public/products/', @clothe.id)
image.processImage

这是我的模特

class Product < ActiveRecord::Base
  attr_accessible :description, :price, :title, :image, :image_file_name, :published

  has_attached_file :image,
    :styles => {
    :thumb => "100x100#",
    :small  => "150x150>",
    :medium => "200x200" },
    :default_url => '/assets/missin.gif',
    :path => Rails.root.to_s + "/public/products/:filename",
    :url => "/products/published/:basename.:extension"