如何根据请求生成压缩文件.
我有这个控制器
def create
send_data generate_tgz("#{RAILS_ROOT}/tmp/example.txt"), :filename => 'export.tgz'
end
Run Code Online (Sandbox Code Playgroud)
但它给了我一个在generate_tgz上找不到的方法.
它是插件还是宝石?我需要什么吗?我可以生成一个zip文件吗?
编辑:
def generate_tgz(file)
system("tar -czf #{RAILS_ROOT}/tmp/export-result #{RAILS_ROOT}/tmp/export")
content = File.read("#{RAILS_ROOT}/tmp/export-result")
#ActiveSupport::Gzip.compress(content)
end
Run Code Online (Sandbox Code Playgroud)
这将创建一个TGZ,但是当我解压我得到的应用程序/ c3ec2057-7d3a-40d9-9a9d-d5c3fe3ffd6f /家庭的/ tmp /导出/ and_the_files
我希望它只是:export/the_files