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

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

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

相关推荐
江南十四行几秒前
Python多线程与多进程实战——避开GIL,榨干CPU
开发语言·网络·python
渐儿几秒前
Agent Harness 工程指南
后端
Eric.Lee20216 分钟前
python实现多个pdf合并
开发语言·python·pdf·pdf合并
zh1570237 分钟前
c++ 零知识证明库 c++如何使用bellman或libsnark
jvm·数据库·python
码界奇点7 分钟前
基于策略模式的多数据源爬虫系统设计与实现
爬虫·python·毕业设计·策略模式·源代码管理·数据库系统
2401_8987176610 分钟前
mysql如何利用cron定时备份_mysql自动化配置说明
jvm·数据库·python
李日灐15 分钟前
【优选算法5】位运算经典算法面试题
后端·算法·面试·位运算
zhoutongsheng15 分钟前
SQL利用子查询实现复杂条件排序_嵌套逻辑实现业务规则
jvm·数据库·python
杨运交16 分钟前
[014][web模块]构建可重复读取的请求体:Spring Boot 请求缓存过滤器设计与实现
后端
郝学胜-神的一滴17 分钟前
干货版《算法导论》03:动态数组 × 链表的极致平衡艺术
java·数据结构·c++·python·算法·链表