orbit-basic/app/controllers/gridfs_controller.rb

18 lines
508 B
Ruby
Raw Permalink Normal View History

2011-08-18 05:43:33 +00:00
require 'mongo'
class GridfsController < ActionController::Metal
2011-08-18 05:43:33 +00:00
def serve
gridfs_path = (params[:path]+'.'+params[:format]).gsub("/gridfs/", "").force_encoding("UTF-8")
2011-08-18 05:43:33 +00:00
begin
gridfs_file = Mongo::GridFileSystem.new(Mongoid.database).open(gridfs_path, 'r')
self.response_body = gridfs_file.read
self.content_type = gridfs_file.content_type
rescue
self.status = :file_not_found
self.content_type = 'text/plain'
self.response_body = ''
end
end
2011-08-18 05:43:33 +00:00
end