首先,有一点背景,因为有很多交互正在进行:我通过 Fetcher 抓取电子邮件,并使用 MMS2R 处理它们以提取附件。这些附件通常是 PDF 文件或 MS Word 文档,因此您希望它们分别content-type
是application/pdf
和application/msword
,但不幸的是,许多邮件程序似乎不这样做。
相反,附件是application/x-pdf
和application/x-doc
。我需要正确设置这些,以便 scribd-fu 正确地 iPaper 文档。现在,mimetype-fu 将设法找出正确的内容类型,但对于我的生活,我只能弄清楚如何正确设置回形针附件的内容类型。
这是代码片段:
mms.process do |media_type, files|
# go through each file
files.each do |filename|
# if it's a format we support, create a record
if media_type =~ /pdf/ # just pdfs for now, to reduce confusion
File.open(filename) do |tempfile|
# Somewhere in here I'd like to change filename.content_type
# to the proper type using mimetype-fu
# except doing tempfile.content_type = whatever doesn't seem to work.
thing = Thing.new
thing.document = tempfile
thing.save!
end
end
end
end
任何帮助将不胜感激,因为我一直在用头撞墙,尝试各种方式来尝试使其正常工作。我已经尝试过这些链接,要么没有成功,要么没有弄清楚需要做什么:
- http://gist.github.com/55009/
- http://railsforum.com/viewtopic.php?id=27448
- http://github.com/dbackeus/paperclip/commit/a514bd03664fc6a764787f59c3169397336702b1
非常感谢!