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

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

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

相关推荐
追逐时光者5 小时前
一个致力于为 C# 程序员提供更佳的编码体验和效率的 Visual Studio 扩展插件
后端·c#·visual studio
小二·6 小时前
Python Web 开发进阶实战:性能压测与调优 —— Locust + Prometheus + Grafana 构建高并发可观测系统
前端·python·prometheus
行百里er6 小时前
用 ThreadLocal + Deque 打造一个“线程专属的调用栈” —— Spring Insight 的上下文管理术
java·后端·架构
玄〤7 小时前
黑马点评中 VoucherOrderServiceImpl 实现类中的一人一单实现解析(单机部署)
java·数据库·redis·笔记·后端·mybatis·springboot
J_liaty7 小时前
Spring Boot拦截器与过滤器深度解析
java·spring boot·后端·interceptor·filter
短剑重铸之日7 小时前
《7天学会Redis》Day2 - 深入Redis数据结构与底层实现
数据结构·数据库·redis·后端
七牛云行业应用7 小时前
重构实录:我删了 5 家大模型 SDK,只留了 OpenAI 标准库
python·系统架构·大模型·aigc·deepseek
知乎的哥廷根数学学派7 小时前
基于多模态特征融合和可解释性深度学习的工业压缩机异常分类与预测性维护智能诊断(Python)
网络·人工智能·pytorch·python·深度学习·机器学习·分类
码事漫谈7 小时前
从C++到C#的转型完全指南
后端
码事漫谈8 小时前
TCP心跳机制:看不见的“生命线”
后端