2013-06-26 2 views
3

У меня есть приложение Django, которое создает CSV-файл (используя csv.writer), а затем загружает его в Amazon S3.Как сэкономить файл от Django на Heroku до S3

Как я это делаю сейчас, локально это сделать файл csv, сохранить его локально, а затем сохранить этот файл на S3. Однако с герокой и «файтимом» я подумал, что лучше пропустить этот «магазин локально».

Есть ли способ вывести файл csv непосредственно на S3 изнутри python?

ответ

2

Проверьте базу данных amazon s3 для хранилищ django. Затем вы можете отправить свой файл csv прямо на s3, не сохраняя его локально.

http://django-storages.readthedocs.org/en/latest/backends/amazon-S3.html

Из документов:

>>> from django.core.files.storage import default_storage 
>>> from django.core.files.base import ContentFile 
>>> from django.core.cache import cache 
>>> from models import MyStorage 

>>> default_storage.exists('storage_test') 
False 
>>> file = default_storage.open('storage_test', 'w') 
>>> file.write('storage contents') 
>>> file.close() 

>>> default_storage.exists('storage_test') 
True 
>>> file = default_storage.open('storage_test', 'r') 
>>> file.read() 
'storage contents' 
>>> file.close() 

>>> default_storage.delete('storage_test') 
>>> default_storage.exists('storage_test') 
False