Django从理论到实战(part54)--MEDIA_ROOT和MEDIA_URL
学习笔记,仅供参考,有错必纠
引用:使用模型来处理上传的文件;Django static静态配置文件
MEDIA_ROOT和MEDIA_URL
- 变量解释
MEDIA_ROOT:指定用户上传文件的本地路径,比如,指定利用FileFIeld,ImageField上传文件的路径;
MEDIA_URL:指定URL的映射,前后要加上/
比如'/work/'
。
- 配置过程
在settings文件中设置
MEDIA_URL
,比如MEDIA_URL = '/work/'
在settings文件中设置
MEDIA_ROOT
,可以是任意位置(与STATIC_ROOT不同),用于保存上传的文件:
MEDIA_ROOT = os.path.join(BASE_DIR, 'work')
MEDIA_URL = '/work/'
- 在urls.py文件中进行配置:
from django.contrib import admin
from django.urls import path,include
from . import views
from django.conf.urls.static import static
from django.conf import settingsurlpatterns = [path('admin/', admin.site.urls),path('', views.mainIndex),
] + static(settings.MEDIA_URL, document_root = settings.MEDIA_ROOT)
- 在settings文件中,TEMPLATES中
'context_processors'
下面新增'django.template.context_processors.media'
:
TEMPLATES = [{'BACKEND': 'django.template.backends.django.DjangoTemplates','DIRS': [os.path.join(BASE_DIR, 'templates')],'APP_DIRS': True,'OPTIONS': {'context_processors': ['django.template.context_processors.debug','django.template.context_processors.request','django.contrib.auth.context_processors.auth','django.contrib.messages.context_processors.messages','django.template.context_processors.media',],},},
]
配置好后可以使用浏览器访问上传的文件,比如MEDIA_URL设置的是'/work/'
,MEDIA_ROOT设置的是'F:/MyStudio/PythonStudio/goatbishop.project01/Django/PaperManageSystem01/work'
,在models中设置的文件上传到upload_to = "word"
,那么文件上传后实际存储地址为'F:/MyStudio/PythonStudio/goatbishop.project01/Django/PaperManageSystem01/work/word/'
,URL为:127.0.0.1:8000/work/word/
Django从理论到实战(part54)--MEDIA_ROOT和MEDIA_URL相关推荐
- Django从理论到实战(part50)--使用模型来处理上传的文件
学习笔记,仅供参考,有错必纠 文章目录 使用模型来处理上传的文件 `MEDIA_ROOT`和`MEDIA_URL` 限制文件的扩展名 使用模型来处理上传的文件 在定义模型的时候,我们可以给存储文件的字 ...
- Django从理论到实战(part25)--数据库操作
学习笔记,仅供参考 参考自:Django打造大型企业官网–Huang Y: 本系列Blog以应用为主,理论基础部分我在后端专栏的Django系列博客已经写过了,如果有些需要补充的知识点,我会在这个系列 ...
- Django从理论到实战(part22)--include模板标签
学习笔记,仅供参考 参考自:Django打造大型企业官网–Huang Y: 本系列Blog以应用为主,理论基础部分我在后端专栏的Django系列博客已经写过了,如果有些需要补充的知识点,我会在这个系列 ...
- Django从理论到实战(part21)--自定义模板过滤器
学习笔记,仅供参考 参考自:Django打造大型企业官网–Huang Y: 本系列Blog以应用为主,理论基础部分我在后端专栏的Django系列博客已经写过了,如果有些需要补充的知识点,我会在这个系列 ...
- Django从理论到实战(part55)--将网站上传到GitHub
代码笔记,仅供参考 文章目录 上传项目到GitHub 创建本地仓库 在GitHub上创建仓库 项目上传 上传项目到GitHub 创建本地仓库 我们在git bash中敲入如下代码. 进入项目目录: c ...
- Django从理论到实战(part53)--CSRF攻击
学习笔记,仅供参考,有错必纠 摘自:某网课笔记 文章目录 CSRF攻击 CSRF攻击概述 CSRF攻击原理 防御CSRF攻击 CSRF攻击 CSRF攻击概述 CSRF(Cross Site Reque ...
- Django从理论到实战(part52)--登录、注销及登录限制
学习笔记,仅供参考,有错必纠 文章目录 登录.注销及登录限制 登录 注销 登录限制 登录.注销及登录限制 登录 在使用authenticate进行验证后,如果验证通过了.那么会返回一个user对象,拿 ...
- Django从理论到实战(part51)--User模型
学习笔记,仅供参考,有错必纠 摘自:pink老师教案 文章目录 User模型 字段 User模型的基本用法 创建用户 创建超级用户 修改密码 登录验证 User模型 User模型是Django框架的核 ...
- Django从理论到实战(part49)--ModelForm
学习笔记,仅供参考,有错必纠 参考自:某网课 ModelForm 我门在写表单的时候,会发现表单中的Field和模型中的Field基本上是一模一样的,而且表单中需要验证的数据,也就是我们模型中需要保存 ...
最新文章
- usaco Controlling Companies
- 可怕!公司部署了一个东西,悄悄盯着你
- ubuntu安装新字体
- 最简单的基于FFMPEG的封装格式转换器(无编解码)
- 机器学习中的数据预处理(sklearn preprocessing)
- C++动态链接库的制作
- 二级c语言题型分数,计算机二级C语言题型和评分标准
- apache rewrite机制
- CI如何接受POST请求中的JSON数据
- 【Java】关于Java的一些基础知识点
- Java集合的ConcurrentModificationException
- 漏洞分析中常用的堆调试支持
- 爬虫访问中,如何解决网站限制IP的问题?
- MACm1上lark无法使用共享屏幕问题
- 使用 Flash 描述复杂的社交网络
- 创新移动互联,阿凡题学习神器引领搜索新体验
- 分布式 Git - 为项目做贡献
- 360Vulcan团队再获微软致谢 协助修复Edge及IE漏洞
- Linux每日一讲:awk命令
- 把C盘的用户Users文件移动到D盘最简单的方法【转】