gpt4 book ai didi

ruby-on-rails - 载波临时目录设置为uploads/tmp文件夹

转载 作者:行者123 更新时间:2023-12-03 21:19:24 25 4
gpt4 key购买 nike

我开始使用Carrierwave,发现它在多个位置存储临时文件,具体取决于它是测试还是延迟工作。

如果在测试(rspec)期间完成,则临时文件将位于RAILS_ROOT/uploads/tmp目录中。

如果在延迟工作期间完成,则临时文件将位于RAILS_ROOT/public/uploads/tmp

首先,我认为rails_root/tmp/uploads将是一个更合理的位置,甚至是系统临时文件夹。

其次,与正常运行不同的测试似乎是一个错误。

有没有办法解决此问题(通过配置或猴子补丁)?我可以把东西放到RAILS_ROOT / tmp文件夹中吗?

最佳答案

您可以在“ config / initializers / carrierwave.rb”中设置config.cache_dir选项。但这是相对于“ / public”的。看来您应该在上传器中这样做:

class MyUploader < CarrierWave::Uploader::Base

def cache_dir
# should return path to cache dir
Rails.root.join 'tmp/uploads'
end
end

关于ruby-on-rails - 载波临时目录设置为uploads/tmp文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9561641/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com