Django 数据库图片不显示的问题

本文详细介绍了在Django项目中正确配置和访问媒体文件的方法,包括MEDIA_URL和MEDIA_ROOT的设置,URL路径的正则表达式匹配,以及前端页面中图片资源的引用方式。针对Linux环境下可能遇到的文件夹权限问题提供了解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题可能有如下几个

media设置

	MEDIA_URL = '/media/'

 MEDIA_ROOT = os.path.join(BASE_DIR, 'media')`

URL设置

re_path('media/(?P<path>.*)', serve, {"document_root": MEDIA_ROOT}),

settings.py

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')] ,
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
            		.....
                'django.template.context_processors.media',
            ],
        },
    },
]

如果是Linux环境的话,可能是文件夹权限的问题.

sudo chmod -R 777 media

前端页面的设置

<img src="{{ MEDIA_URL }}{{ xxx.image }}" >
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值