Django配置Media媒体文件路径及上传流程

远山来客
远山来客
发布时间:2026-10-13| 6人浏览过
原创

本文详细讲解Django中Media媒体路径的配置步骤。涵盖settings.py中的路径设置、models.py中FileField模型创建、数据库迁移、Admin后台注册以及超级用户添加文件的完整流程,并说明如何访问上传的媒体资源。

Django Media路径配置与上传全流程

首先,需要创建一个名为app02的应用,并在项目的settings.py配置文件中进行相关设置。

接着,在settings.py中配置媒体文件(Media Files)的保存路径,确保Django知道将上传的文件存储在哪里。


from django.contrib import admin
from django.urls import path,re_path
from app01 import views
from django.views.static import serve
from LoginTest import settings

urlpatterns = [
  path('admin/', admin.site.urls),
  path("login/", views.login),
  path("index/", views.index),
  path("home/", views.home),
  path("logout/", views.logout),
  path("set_session/", views.setSession),

  #手动添加对外开放的后端服务器资源
  re_path(r"^media/(?P<path>.*)/", serve, {"document_root": settings.MEDIA_ROOT}),
]

随后,在app02的models.py文件中定义一个模型,用于处理文件上传功能。


from django.db import models

# Create your models here.
class UserDetail(models.Model):
  headPhoto = models.FileField(upload_to="head")
  hobby = models.TextField(max_length=200)

执行makemigrations和migrate命令,以同步数据库结构,确保模型变更生效。

在app02的admin.py文件中,将之前创建的UserDetail模型注册到Django Admin后台,以便进行管理。


from django.contrib import admin
from app02.models import UserDetail

# Register your models here.


admin.site.register( UserDetail)

创建一个超级用户(admin),并通过Django Admin界面添加UserDetail实例,从而完成文件的上传操作。

最后,手动在浏览器中访问指定的URL(例如http://127.0.0.1:8080/media/head/head1.jpg/)来验证媒体文件是否可正常访问。

以上即为Django中Media媒体路径设置及相关操作的完整介绍,感谢阅读。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。