我的Rails应用程序在Ubuntu服务器上运行。
我需要创build临时文件,以便将它们“馈送”到第二个独立的应用程序(如果需要这种信息,我将使用rake任务)
我的问题是:在Rails应用程序上创build临时字段的最佳方法是什么?
由于我在Ubuntu的,我可以创build/tmp/whatever
,但什么工作只能在Linux。
我希望我的应用程序尽可能便携 – 所以如果需要的话,它可以安装在Windows机器和Mac上。
有任何想法吗?
非常感谢。
tmp/
确实是放置文件的正确位置。
我发现在该文件夹上创建文件的最佳方式是使用ruby的tempfile库 。
代码如下所示:
require 'tempfile' def foo() # creates a temporary file in tmp/ Tempfile.open('prefix', Rails.root.join('tmp') ) do |f| f.print('a temp message') f.flush #... do more stuff with f end end
我喜欢这个解决方案,因为
Rails应用程序也有自己的tmp/
目录。 我想那个总是可用的,因此是一个很好的候选人使用和保持你的应用程序的便携性。