Rails3:更改temp(tmp)目录的位置

Mar*_*ske 5 configuration tmp ruby-on-rails-3

我通常在我的本地Dropbox文件夹中开发.tmp文件夹中的某些文件被浏览器锁定(并使Dropbox忙碌),Growl会抛出异常等等.

因此,我正在寻找一个配置设置,将tmp文件夹放在Rails-app包之外.那可能吗?

sma*_*thy 6

不是你正在寻找的答案 - 但我可以肯定地说,没有配置选项来改变Rails认为tmp文件夹的位置.该位置在Rails代码库中的许多不同位置进行了硬编码.

看起来符号链接同步原始文件,因此您可能会遇到相同的锁定问题.

如果你这样做,那么你可以反过来使用符号链接来解决你的问题,即.您的保管箱外部创建您的项目,并将除了保险箱之外的所有内容符号链接tmp到保管箱中的文件夹中.

所以你可能有你的Rails应用程序~/work/rails_project/<all the rails dirs including tmp>,然后你会在你的Dropbox中有一个相应的目录~/dropbox/rails_project,然后那个目录里你会手动创建一堆符号链接,然后删除tmp一个,使用bash你会这样做:

$ for f in ~/work/rails_project/*; do ln -s $f; done
$ rm tmp
Run Code Online (Sandbox Code Playgroud)

如果您曾在应用程序的根目录中添加新文件/目录,则需要记住再次运行该程序.


小智 5

ENV['TMPDIR'] = Rails.root.join('tmp')
Run Code Online (Sandbox Code Playgroud)