Skip to content

Commit

Permalink
serve the csv file using a download handler
Browse files Browse the repository at this point in the history
  • Loading branch information
brad committed Jul 9, 2014
1 parent 8f697a4 commit c158e2c
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions backend/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@
import webapp2

from google.appengine.api import files, mail, memcache
from google.appengine.ext import db, deferred
from google.appengine.ext import blobstore, db, deferred
from google.appengine.ext.webapp import blobstore_handlers

import commands
import env
Expand Down Expand Up @@ -86,17 +87,16 @@ def get(self):
self.redirect('/admin/files%s/pledges.csv' % file_name)


class PledgesCsvHandler(webapp2.RequestHandler):
class PledgesCsvHandler(blobstore_handlers.BlobstoreDownloadHandler):
def get(self, file_name):
"""
Serve the blobstore file if it exists, otherwise instruct the user to
refresh later.
"""
try:
with files.open(file_name, 'r') as f:
self.response.headers['Content-type'] = 'text/csv'
for row in f.read():
self.response.write(row)
blob_key = files.blobstore.get_blob_key(file_name)
blob_info = blobstore.BlobInfo.get(blob_key)
self.send_blob(blob_info)
except:
self.response.write('Working on it, refresh in a few minutes.')

Expand Down

0 comments on commit c158e2c

Please sign in to comment.