You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django中Cloudinary如何将所有文件类型设为私有?

解决Django中Cloudinary所有文件设为私有问题

你可以通过两种方式实现全局设置所有上传文件为私有:

方法一:直接在settings.py中配置

在你的Django项目settings.py里,添加或修改CLOUDINARY_STORAGE配置项,指定默认的访问模式为私有:

CLOUDINARY_STORAGE = {
    'CLOUD_NAME': '你的云名称',
    'API_KEY': '你的API密钥',
    'API_SECRET': '你的API密钥',
    # 新增这一行,设置所有文件默认私有
    'DEFAULT_ACCESS_MODE': 'private'
}

这样所有通过MediaCloudinaryStorage上传的文件都会自动标记为私有,无需修改其他代码。

方法二:自定义存储类(更灵活)

如果需要针对不同场景调整,或者要扩展其他逻辑,可以自定义存储类继承MediaCloudinaryStorage,强制设置access_mode:

# 在你的项目中新建一个存储类文件,比如storage.py
from cloudinary_storage.storage import MediaCloudinaryStorage

class PrivateMediaCloudinaryStorage(MediaCloudinaryStorage):
    def __init__(self, *args, **kwargs):
        kwargs['access_mode'] = 'private'
        super().__init__(*args, **kwargs)

然后在settings.py中把默认存储类改成你自定义的这个:

DEFAULT_FILE_STORAGE = 'your_project_name.storage.PrivateMediaCloudinaryStorage'

两种方法都能实现全局私有,第一种更简单直接,适合不需要额外定制的场景;第二种适合需要扩展功能的情况。

内容的提问来源于stack exchange,提问作者sdg

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 12:45:46