• django中使用qiniu作为第三方存储


    django使用七牛云存储

    前言

    • 现在的网站基本上都需要上传文件,那么文件会占用大量的存储空间和服务器流量,由此使用第三方存储服务器很有必要,今天我们就使用七牛云存储作为django项目的文件存储服务器

    一、安装

    pip install django-qiniu-storage
    

    二、settings配置

    配置参数 备注
    QINIU_ACCESS_KEY 七牛给开发者分配的 AccessKey
    QINIU_SECRET_KEY 七牛给开发者分配的 Secret
    QINIU_BUCKET_NAME 用来存放文件的七牛空间(bucket)的名字
    QINIU_BUCKET_DOMAIN 七牛空间(bucket)的域名
    QINIU_SECURE_URL 是否通过 HTTPS 来访问七牛云存储上的资源, 默认为False

    三、在django中的使用

    1、settings.py

    QINIU = True
    
    STATIC_URL = '/static/'
    STATICFILES_DIRS = [
        os.path.join(BASE_DIR, 'static')
    ]
    
    MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
    MEDIA_URL = '/media/'
    CKEDITOR_UPLOAD_PATH = 'upload/'
    
    if QINIU:
        del STATIC_URL, STATICFILES_DIRS, MEDIA_URL, MEDIA_ROOT
        # 七牛云存储设置
        QINIU_ACCESS_KEY = ''
        QINIU_SECRET_KEY = ''
        QINIU_BUCKET_NAME = ''
        QINIU_BUCKET_DOMAIN = ''
        QINIU_SECURE_URL = False
        PREFIX_URL = 'http://'
    
        # STATIC文件的更改
        STATIC_URL = QINIU_BUCKET_DOMAIN + '/static/'
        STATIC_ROOT = 'static'
        STATICFILES_STORAGE = 'qiniustorage.backends.QiniuStaticStorage'
    
        # 文件系统更改
        DEFAULT_FILE_STORAGE = 'qiniustorage.backends.QiniuMediaStorage'
        MEDIA_URL = PREFIX_URL + QINIU_BUCKET_DOMAIN + "/media/"
        MEDIA_ROOT = 'media'
    

    2、运行命令将static文件夹下内容上传到七牛云

    python manage.py collectstatic
    

    2.1、如果报错,则找到源码更改

    # /site-packages/qiniustorage/backends.py
    # Ctrl + F 搜索 _normalize_name 函数 注释函数内所有内容,改为
    return ("%s/%s"% (self.location, name.lstrip('/'))).lstrip('/')
    

    3、模板中使用

    {{ load static }}
    <link rel="stylesheet" type="text/css" href="{% static '/html/css/reset.css' %}">
    

    四、效果预览


    你的无畏来源于你的无知!

  • 相关阅读:
    HTML <input> 标签的 maxlength 属性
    HTTP 方法:GET 对比 POST
    怎么在html页面和js里判断是否是IE浏览器
    一行神奇的javascript代码
    c# 数据库批量插入数据SqlBulkCopy 示例
    c# 多线程调用窗体上的控件 示例
    sqlserver查找使用了某个字段的所有存储过程
    SQL Server 数据库性能优化
    SQL语句的执行过程
    Sql Server- 性能优化辅助指标SET STATISTICS TIME ON和SET STATISTICS IO ON
  • 原文地址:https://www.cnblogs.com/YiwenGG/p/14288609.html
Copyright © 2020-2023  润新知