如何访问服务器端的回形针附件?

时间:2011-01-20 17:44:51

标签: ruby-on-rails paperclip

我正在使用paperclip将excel文件附加到某个模式。

目的是将数据从excel文件导入数据库。

Model: Import
has_attached_file: spreadsheet

对于导入过程,我想访问模型中的文件,如下所示。

path = "#{Rails.root}/public/#{spreadsheet.url}"    

这不起作用。我猜是因为网址末尾有时间戳。

一般来说,访问服务器端附件的最佳方法是什么?

2 个答案:

答案 0 :(得分:5)

我认为您正在寻找to_file方法。你应该可以这样做:

excel_file = self.spreadsheet.to_file

将从服务器返回上传的文件(如果您使用的是s3或远程存储),或者是否已将其分配给模型但尚未实际存储(如果您之前未调用过model.save)它被上传了,它返回存储在磁盘上的临时文件。

从那里你应该可以使用excel gem或库来解析内容。

或者,您可以使用spreadsheet.url(nil, false) - 第二个参数表示是否附加时间戳。

答案 1 :(得分:1)