django上传媒体文件至media的配置部署

本文详细介绍了如何在Django项目中配置和部署媒体文件,包括设置MEDIA_URL和MEDIA_ROOT,以及在urls.py中添加media路由,确保用户上传的图片能够正确存储和访问。

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

django上传媒体文件至media的配置部署

在Django应用的文件夹下,经常会发现这两个文件夹:static, media; static称为静态文件夹,用于存放CSS, JavaScript, 网站logo等不变的文件;相对的,把media称为媒体文件夹,用于存放用户上传的图片。

第一步,在settings.py中配置media文件

# 配置头像上传路径
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

第二步在项目文件的urls.py中配置media路由

from django.conf.urls import url
from django.views.static import serve
from . import settings

urlpatterns = [
    # ... the rest of your URLconf goes here ...
    url(r'^media/(?P<path>.*)$', serve, {'document_root': settings.MEDIA_ROOT})
]

在app的models.py中定义上传图片


class User(models.Model):
    username = models.CharField(max_length=32, unique=True)  
    password = models.CharField(max_length=256)   
    email = models.CharField(max_length=64, unique=True)  
    sex = models.BooleanField(default=False)  
    icon = models.ImageField(upload_to='icons')  # 头像上传到media/icons目录中
    is_delete = models.BooleanField(default=False)  

    class Meta:
        db_table = 'user'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值