Django静态文件&媒体文件&文件上传

静态文件和媒体文件

媒体文件:用户上传的文件,叫做media

静态文件:存放在服务器的css, js, image等叫做static

1.在django中使用静态文件

1) 首先确保django.contrib.staticfiles在 INSTALLED_ APPS中

2)在settings中定义 STATIC_URL

STATIC URL =' /static/

3) 在你app的static目录中存放静态文件,比如:

App/static/example. jpg.

4)如果有别的静态资源文件,不在app下的static目录下,可以通过 STATICFILES_ DIRS来指定额外的静态文件

搜索目录。

STATICFILES DIRS=[

os. path. join(BASE_DIR, "static"),

...

]

5) 在模板中使用1oad标签去加载静态文件

{% load static %}

<img src="{% static "App/example. jpg" %}" />

在项目目录下创建static和templates在settings中需要去配置一下路径

导入不同静态文件的格式

2.在django中上传单个文件

在settings中设置存放文件的路径

媒体文件

MEDIA_ROOT = BASE_DIR / "static/uploads"

创建一个上传的html

在视图函数中编写上传文件的函数

测试一下图片可以成功上传到本地文件夹

接下来我们将 该媒体文件的路经,存入到数据库中

先创建一个模型文件

python 复制代码
from django.db import models


class UserModel(models.Model):
    name = models.CharField(max_length=20, unique=True)
    icon = models.CharField(max_length=255)

然后执行迁移

python 复制代码
python3 Djangopro1/manage.py makemigrations
python3 Djangopro1/manage.py migrate

视图函数中上传图片并保存图片路径到数据库

创建视图函数去显示数据内容

相关推荐
毋语天4 分钟前
FastAPI 进阶实战:请求体、文件上传、响应模型与数据校验
python·fastapi·api开发·数据校验·pydantic
IT_陈寒1 小时前
Vue的computed属性怎么突然不更新了?
前端·人工智能·后端
ZhengEnCi1 小时前
09a-斯坦福 CS336 作业一:BPE 分词器
python·神经网络
测试员周周1 小时前
【Appium 系列】第18节-重试与容错 — 移动端测试的稳定性保障
人工智能·python·功能测试·ui·单元测试·appium·测试用例
invicinble1 小时前
spring提供的其他机制
java·后端·spring
还是鼠鼠1 小时前
AI掘金头条新闻系统 (Toutiao News)-用户注册-创建用户
后端·python·mysql·fastapi·web
灰灰勇闯IT1 小时前
DeepSeek-R1 在 CANN 上的推理部署
pytorch·python·深度学习
李广坤2 小时前
别再把 Filter、Interceptor 和 AOP 混为一谈了!从接口加解密谈 Spring 纵深架构设计
后端
我是一颗柠檬2 小时前
【MySQL全面教学】MySQL条件查询与排序Day4(2026年)
数据库·后端·mysql
她的男孩2 小时前
后台权限不只是菜单隐藏:Forge Admin 的 RBAC 权限链路拆解
java·后端·架构