镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content
sj26Public

About

Create zip files to a stream with rails integration.

Resources

Stars

23 stars

Watchers

3 watching

Forks

Latest commit

 

History

39 Commits

Folders and files

Repository files navigation

ZipStream Build Status

Create zip files to a stream.

Integration with Ruby on Rails means you can create a view, index.zipstream, which is a ruby file with a zip object:

@entries.each do |entry|
  zip.write "entry-#{entry.id}.txt", entry.to_s
end

Which will happily implicitly render from:

class EntriesController
  def index
    @entries = Entry.all
  end
end

Giving you a zip file when rendered. More to come!

Caveats

Keep in mind that this will use one of your workers/threads/processes until the file is completely downloaded. We are using an iterated rack body which streams so if rack/web servers handle this nicely then you might be in luck.

Tested with Rails 3.1 on REE 1.8.7 and MRI 1.9.3.

Large files are not yet handled efficiently. Coming soon!

Thanks

Inspired by Rails Builder templates and http://pablotron.org/software/zipstream-php/

License

Copyright (c) 2011 Samuel Cochran (sj26@sj26.com). Released under the MIT License, see LICENSE for details.

About

Create zip files to a stream with rails integration.

Resources

Stars

23 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages