• Django项目使用七牛云存储图片


    Django项目使用七牛云存储图片

    最近,写了一个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"
    
  • 相关阅读:
    Quarts 执行定时任务失败(.job.entity.ScheduleJobEntity cannot be cast to com.)
    Map与String互相转化
    weui中的picker滑动报错
    weui中的picker使用js进行动态绑定数据
    ajax跨域问题解决方案(jsonp的使用)
    pdm文件打开方式
    删除静态页面的html
    js同时获取多个共同class内容标签内容集合
    内外网同时使用
    win10重装系统修改信息
  • 原文地址:https://www.cnblogs.com/wenqiangit/p/10600232.html
Copyright © 2020-2023  润新知