wj5633

  最近,写了一个django项目,想在项目中使用七牛云存储上传图片,在网上搜索到django-qiniu-storage,查看文档,按步骤居然设置成功了。

安装

1 pip install django-qiniu-storage

注册七牛云账号

  打开七牛云注册认证,在个人中心找到两个Key,添加一个存储空间就可以得到bucket的域名。这样就拿到了项目所需的4个配置:

1 QINIU_ACCESS_KEY
2 QINIU_SECRET_KEY
3 QINIU_BUCKET_NAME
4 QINIU_BUCKET_DOMAIN

Django中配置 setting.py

 1 QINIU_ACCESS_KEY = \'zPObn7m8F5RZ1dF9kth4Wivz7WE89rWL1sA_Zt\'
 2 QINIU_SECRET_KEY = \'sLdn1AkrebELj-vdFIZs6cmV3LRP13P-qShZEf\'
 3 QINIU_BUCKET_NAME = \'wj5633\'
 4 QINIU_BUCKET_DOMAIN = \'ompehspge.bkt.clouddn.com/\'
 5 QINIU_SECURE_URL = False      #使用http 
 6 
 7 
 8 PREFIX_URL = \'http://\'
 9 
10 MEDIA_URL = PREFIX_URL + QINIU_BUCKET_DOMAIN + \'/media/\'
11 MEDIA_ROOT = os.path.join(BASE_DIR, \'media\')
12 
13 DEFAULT_FILE_STORAGE = \'qiniustorage.backends.QiniuMediaStorage\' 

这样上传的文件就到七牛云空间了,下面让静态文件也放到七牛云,继续配置:

1 STATIC_URL = QINIU_BUCKET_DOMAIN + \'/static/\'
2 # STATIC_URL = \'/static/\'
3 STATICFILES_DIRS = [
4     os.path.join(BASE_DIR, \'static\'),
5 ]
6 STATIC_ROOT = os.path.join(BASE_DIR, \'static\')
7 
8 STATICFILES_STORAGE = \'qiniustorage.backends.QiniuStaticStorage\'

运行命令

1 python manage.py collectstatic

app/static和工程/static都将上传七牛云。

注意:

1. 这里STATIC_URL不能带http://,和MEDIA_URL不一样,否则访问不了。

2. django-qiniu-storage 最新版配置:

  STATIC_ROOT = "static" (可以忽略)
  MEDIA_ROOT = "media"

 

分类:

技术点:

相关文章: