【发布时间】:2010-12-05 03:15:55
【问题描述】:
我有以下几点:
attachments.each do |a|
Rails.logger.info a.filename
tempfile = Tempfile.new("#{a.filename}", "#{Rails.root.to_s}/tmp/")
Rails.logger.info tempfile.path
end
附件来自回形针。
输出如下:
billgates.jpg
/Users/bhellman/Sites/cline/tmp/billgates.jpg20101204-17402-of0u9o-0
为什么文件名最后会附加20101204-17402-of0u9o-0?那是用回形针等破坏一切。有人见过吗?我这辈子都不知道这是怎么回事?
谢谢
更新 回形针:Paperclip on github
a是附件
tempfile = Tempfile.new("#{a.filename}", "#{Rails.root.to_s}/tmp/")
tempfile << a.body
tempfile.puts
attachments.build(
:attachment => File.open(tempfile.path)
)
【问题讨论】:
-
为什么不直接使用 File.new 而不是 Tempfile.new?
-
好问题。它需要对 Heroku 友好,并且他们的文档说要使用 tempfile?
-
如果发生冲突,File.New 不会中断吗?
标签: ruby-on-rails ruby-on-rails-3