Django的Boto包装

django-boto的Python项目详细描述


#django boto

[![吉特](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/qnub/django-boto?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge

是与[amazon aws]集成的django的实现(http://aws.amazon.com/) 通过[boto](https://github.com/boto/boto)模块提供服务。

#安装

要安装:

easy_install django-boto

或:

pip install django-boto

#配置

##默认文件存储

无法用作默认文件存储系统,因为路径不是 已实现,但仍可以将s3storage对象作为存储传递 文件字段选项

from django.db import models from django_boto.s3.storage import S3Storage

s3 = S3Storage()

class Car(models.Model):
… photo = models.ImageField(storage=s3)

##其他设置.py选项

AWS访问密钥ID
(默认文件存储使用所需)access key id来自 aws服务的安全凭据设置。使用所需 作为默认存储。
aws_secret_access_键
(默认文件存储使用所必需)密钥访问密钥 aws服务的安全凭据设置。使用所需 作为默认存储。
aws\u acl\u策略
保存的对象的默认屏蔽acl。默认为公共读取
boto_s3_bucket
亚马逊s3bucket名称。默认设置为aws-access-key-id
主机
Amazon S3主机名。默认为s3.amazonaws.com
boto_bucket_位置
亚马逊数据中心位置。默认为美国经典地区
aws_s3_force_http_url
默认为false。此设置允许您强制S3返回指向文件的HTTP链接(如果SSL有问题)。

#用法

##手动S3存储使用

如果需要手动使用,可以传递bucket name (如boto_s3_bucket),key(如aws_access_key_id), secret(作为aws_secret_access_key)和位置 (如boto_bucket_location)直接发送到存储构造函数:

from django_boto.s3.storage import S3Storage

s3 = S3Storage(bucket_name=’another-bucket’, key=’another-key’,
secret=’another-secret’, location=’EU’)

s3storage是典型的[django存储系统](http://readthedocs.org/docs/django/en/1.4/ref/files/storage.html#the-storage-class),仅路径 未实现且已创建时间已访问时间返回 值与修改时间相同。

##上载快捷方式

您可以使用快捷方式进行简单上载:

from django_boto.s3 import upload

upload(filename, name=None, prefix=False, bucket_name=False, key=None,
secret=None, host=None, expires=0, query_auth=False, force_http=True, policy=None)

其中:

文件名
字符串文件或django的文件系统路径文件实例 或者python文件对象实例;
名称
字符串上载文件的目标django的名称;
前缀
字符串指向s3.amazonaws.com中文件名的路径前缀url。就像 文件名/images/image.jpg带有化身的前缀convert to avatars/image.jpg在Amazon URL中;
桶名
Adv.Douk的名称(如果不存在-系统试图创建它)在亚马逊 s3;
AWS访问密钥ID替换;
秘密
aws_secret_access_key替换。
主机
主机更换。
过期
int私人链接的有效期应为多长。
查询授权
bool是否应使用有效签名生成url? 私人文件需要。
强制http
bool生成的url应该是http吗?
政策
字符串上传对象的屏蔽acl字符串。

最后九个选项是可选的。如果未设置-它取自设置.py 或者使用默认值。

upload()返回生成的文件下载。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java SimpleCursorAdapter删除值   java结束while循环条件   java检查设备是否连接到特定网络   java组织。冬眠MappingException找不到逻辑名称为annotation getter的列   为什么java邮件中会抛出此异常?   加载SDK时发生java Eclipse错误   返回奇怪输出的Java数组   JavaXStream和对象类序列化   将枚举列表传递给namedQuery后出现java非法转换异常。Hibernate中的setParameter()   java Android studio不允许我在字符串上使用开关?   有没有办法从Java程序访问存储在Chrome中的cookie   java在枚举中构造实例而不修改枚举类   java Blackberry JDE FieldChangeListener   java修复错误:未报告的异常InterruptedException   java Spring数据JPA:findAll(具有规范和可分页)在计数查询中失败