问题描述
我需要将VCard .vcf文件写入(保存)到我的Amazon s3存储桶中,但是出现了问题。我已经设法将vcf文件保存在本地,然后复制到s3存储桶。我如何将直接存储到S3存储桶中,顺便说一句,刚开始使用AWS,希望能为您提供帮助! 我从客户模型数据库中获取数据,这是我的django视图
import ...
import boto3
customer = Customer.objects.get(identifier=identifier)
data = {}
data['n'] = customer.first_name + ' ' + customer.last_name
data['fn'] = customer.first_name + ' ' + customer.last_name
data['tel'] = customer.phone
data['email'] = customer.email
vcard = vobject.readOne('\n'.join([f'{k}:{v}' for k,v in data.items()]))
vcard.name = 'VCARD'
vcard.useBegin = True
vcard.prettyPrint()
############# WORKS BUT SAVES LOCALLY ###############
path = (settings.MEDIA_ROOT + 'customer.vcf')
with open(path,'w',newline='') as f:
myfile = File(f)
myfile.write(vcard.serialize())
############# WORKS BUT SAVES LOCALLY ###############
############# dublicates to bucket ###############
s3 = boto3.resource('s3')
BUCKET = "bucket"
s3.Bucket(BUCKET).upload_file(path,'customer.vcf')
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)