2013-06-26 37 views
3

我有一個Django應用程序,它可以生成.csv文件(使用csv.writer),然後將其上傳到Amazon S3。如何在Heroku上將文件從Django最佳保存到S3

我現在在本地做的是製作csv文件,將它存儲在本地,然後將該文件保存到S3。然而,對於heroku和「filesytem」,我認爲跳過「本地商店」步驟可能會更好。

有沒有辦法從python中直接輸出csv文件到S3?

回答

2

查看django-storages的amazon s3後端。然後,您可以將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 
相關問題