Django 静态文件

2023-11-02

静态文件

1.什么是静态文件

对于前端已经写好了的文件 我们只是拿过来使用 那么这些文件都可以称之为叫"静态文件"

静态文件可以是:bootstrap一类的前段框架, 已经写好了的图片,css,js
静态文件默认全都放在static文件夹下,static文件夹中默认会创建的子文件夹(手动创建):
css文件夹  当前网站所有的样式文件
js文件  当前网站所有的js文件
img文件  当前网站所有的图片文件
其他(前端框架代码 第三方插件代码...)

2.静态文件配置

(1):将static文件夹路径配置到settings.py中
# settings.py文件中:
STATICFILES_DIRS = [
    os.path.join(BASE_DIR,'static')
]
# 你只要输入static文件夹内具体文件的路径就能够访问到

 

(2):利用解析器"动态解析"静态文件接口前缀
<!--HTML文件中-->
{% load static %}
<link rel="stylesheet" href="{% static 'bootstrap-3.3.7-dist/css/bootstrap.min.css' %}">
<script src="{% static 'bootstrap-3.3.7-dist/js/bootstrap.min.js' %}"></script>

 

注意

# 在settings.py文件中:
STATIC_URL = '/static/'  # 这个static不是文件夹的名字 而是接口前缀
    """只要你想访问静态文件中的资源 文件路径就必须用static开头"""
    # 手动将static文件夹中所有的资源暴露给用户
    STATICFILES_DIRS = [
        os.path.join(BASE_DIR,'static'),  # 真正的文件夹路径
        os.path.join(BASE_DIR,'static1'),  # 真正的文件夹路径
        os.path.join(BASE_DIR,'static2'),  # 真正的文件夹路径
        os.path.join(BASE_DIR,'static3')  # 真正的文件夹路径
    ]  # 一旦你是以接口前缀开头的 那么就会自动拿着接口前缀后面的文件路径去列表中一个个的文件夹中查找文件

 

3.media配置

media配置 可以暴露给用户任意的后端资源

网站所使用的静态文件默认都是放在static文件夹下
用户上传的静态文件 也应该放在一个固定的文件夹下
我们目前实现的是用户上传的头像 固定放在avatar文件夹下了
我们应该创建一个类似于static文件夹  里面在根据文件的不同创建不同的文件夹存储数据

 

# 规定 用户上传的所有的静态文件 全部放到media文件夹下 
MEDIA_ROOT = os.path.join(BASE_DIR,'media')

 

from django.views.static import serve
from 项目名 import settings
# 手动暴露后端文件夹资源 url(r'^media/(?P<path>.*)',serve,{"document_root":settings.MEDIA_ROOT}),

 

转载于:https://www.cnblogs.com/waller/p/11615531.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django 静态文件 的相关文章

  • 单击或悬停在菜单区域之外时关闭反应按钮下拉菜单

    在我的反应应用程序中 其中一个组件正在创建一个按钮下拉菜单 如下所示 div class dropdown div
  • Python OO程序结构规划

    我是 OOP 的初学者 我想创建一个包含三个类 A B 和 C 的程序 该类的每个实例都由一组特征 Achar1 Achar2 等定义 该程序应该创建uses由 A 元素 B 元素和 C 元素以及开始日期和结束日期组成 A 和 B 都有子类
  • 使用 jQuery 从字符中获取文本

    我想在出现特定字符后从字符串中获取文本 比方说 文本文本文本 abc 我想得到 abc jquery 中这是如何完成的 这对某些人来说可能是微不足道的 但我对 jQuery 没有什么经验 你可以这样做 var text texttextte
  • Vue SPA - 如何在浏览器中呈现时隐藏 .vue 文件

    我正在开发一个用 Vue js 开发的单页应用程序 托管在 Node js 服务器上 目前它仍在开发中 但最终将暴露给外部客户 并且由于我们将处理敏感数据 我们希望避免在用户检查元素时看到 vue 文件和相对文件树结构在开发工具中 See
  • 在tinymce 4中裁剪后上传图像

    我正在开发tinymce 并且已经实现了imagetools 现在 当图像插入到文本编辑器中 然后我编辑 裁剪图像时 它将图像 src 更改为类似的内容blob www localhost asdf ghij 我想要的是裁剪后我可以将此 u
  • scrapy蜘蛛如何将值返回给另一个蜘蛛

    我正在爬行的网站包含许多玩家 当我点击任何玩家时 我都可以进入他的页面 网站结构是这样的
  • Django 视图中的原始 SQL 查询

    我将如何使用原始 SQL 执行以下操作views py from app models import Picture def results request all Picture objects all yes Picture objec
  • 如何将base64字符串转换为文件?

    我使用 jquery 插件来裁剪图像 该插件将裁剪图像并将其作为 Base64 编码字符串提供给我 为了将其上传到 S3 我需要将其转换为文件并将该文件传递到上传函数中 我怎样才能做到这一点 我尝试了很多事情 包括使用解码字符串atob 没
  • AWS DynamoDb DocumentClient - 从项目数组创建批量写入 - node.js

    我正在尝试执行batchWrite使用 DynamoDB 的操作DocumentClient来自项目数组 JSON 这是我的代码 var items for i 0 i lt orders length i var ord orders i
  • 如何使用 Anaconda Python 执行 .py 文件?

    我刚刚在我的 Windows 计算机上下载并安装了 Anaconda 但是 我在使用命令提示符执行 py 文件时遇到问题 如何让我的计算机了解 python exe 应用程序位于 Anaconda 文件夹中 以便它可以执行我的 py 文件
  • 动态 getter 和 setter - 一种可能性

    我正在尝试解决最近出现的一个问题 假设我们想要并且知道如何在 javascript 中使用动态 getter 和 setter 就像 php 中的那样 get set 但由于 javascript 没有包罗万象的属性 我们唯一能做的就是提供
  • 使用 pywin32com 进行 opc 的内存泄漏

    我很难弄清楚如何解决内存泄漏问题 我认为这可能是 pywin32 的问题 但我不完全确定 我用于读取 写入单个项目的代码似乎工作得很好 但是当使用组函数时 它会慢慢泄漏内存 我怀疑这是来自必须在 server handles 中传递的基于
  • 树莓派上的 /dev/mem 访问被拒绝

    我正在使用我的 Raspberry Pi 并且正在编写一个 cgi python 脚本 该脚本创建一个网页来控制我的 gpio 输出引脚 当我尝试将 RPi GPIO 作为 GPIO 导入时 我的脚本崩溃了 这是我收到的错误 File co
  • 未捕获的类型错误:lang 不是函数[重复]

    这个问题在这里已经有答案了 在我的 HTML 中我定义了lang函数在script标签并添加 试射 必须调用的按钮lang点击时
  • 哪些 2to3 修复程序输出有效的 Python 2 代码?

    2to3 是一个 Python 程序 它读取 Python 2 x 源代码并应用一系列修复程序将其转换为有效的 Python 3 x 代码 考虑一下列出的四十个修复者https docs python org 3 library 2to3
  • Python - 函数无法在新线程中运行

    我正试图杀死notepad exe使用此函数在 Windows 上进行处理 import thread wmi os print CMD Kill command called def kill c wmi WMI Commands not
  • iOS 6 上的 Safari 是否缓存 $.ajax 结果?

    自从升级到 iOS 6 以来 我们看到 Safari 的网页视图擅自缓存 ajax来电 这是在 PhoneGap 应用程序的上下文中 因此它使用 Safari WebView 我们的 ajax电话是POST方法并且我们将缓存设置为 fals
  • 为什么 Pytest 对夹具参数执行嵌套循环

    使用 Pytest 我想编写一个测试函数 该函数接受多个装置作为参数 每个灯具都有几个参数 例如 test demo py 中是一个函数test squared is less than 10需要固定装置 negative integer
  • 通过 subprocess.communicate 在 python 脚本之间传输 pickled 对象输出

    我有两个 python 脚本 object generator py 它会腌制给定的对象并打印它 另一个脚本 object consumer py 通过 subprocess communicate 选择第一个脚本的输出 并尝试使用 pic
  • Jquery 脚本可以在 JSfiddle 中运行,但不能在 html 页面上运行

    我创建了一个JSFiddle http jsfiddle net defjam64 w4sGZ 4 其按预期工作 Jquery script function icon hover gcp icon hover function gcp i

随机推荐

  • 客户端下载

    include
  • 设计模式的 C++ 实现---中介者模式

    前文回顾 单例模式 一 单例模式 二 观察者模式 简单工厂模式 工厂方法模式 一 工厂方法模式 二 抽象工厂模式 一 抽象工厂模式 二 原型模式 外观模式 前言 中介者模式主要用于多个对象之间的交互 所谓交互就是会互相调用对方的接口方法 中
  • JDK1.8 下载及安装

    JDK 下载 官网下载地址 https www oracle com java technologies javase downloads html 打开网页后找到 Java SE 8u241 点击 JDK Download 选择电脑对应的
  • Grafana插件Plugin中文汉化

    示例Github地址 汉化三方插件 前面说过汉化Grafana的工作 目前在7 2 1上面 大部分已经完成 细节继续完善 今天考虑在第三方插件上做一些汉化 点到插件一看全是英文感觉很突出 领导看到了也不爽啊 找个软的捏 饼图在展示方面比较直
  • C++ OJ习题练习(十)设计管理出版物的类

    Problem Description 某出版社发行图书和光盘 利用继承设计管理出版物的类 要求如下 建立一个基类Publication存储出版物的标题title 出版物名称name 单价price及出版日期date 用Book和CD类分别
  • Horizon Client 配置设置和命令行选项

    Horizon Client 配置设置和命令行选项 Twitter FaceBook LinkedIn Weibo 添加到库 添加到库 RSS 下载 PDF 发送反馈 反馈 编辑 评论 更新时间 2022年10月05日 选择的产品版本 VM
  • Hexo博客优化之Next主题美化

    前言 有了前面几篇博客的介绍 我们就可以很容易的搭建并编辑我们的博客了 不过既然是属于自己的博客网站 自然也就想让其更加美观 更有意思 所以呢我下面介绍一下Hexo博客的主题美化操作 1 Next主题 Hexo博客支持很多主题风格 其中Ne
  • error trying to connect: 远程主机强迫关闭了一个现有的连接。 (os error 10054)

    今天运行自动化测试的代码时 出现了这个问题 检索了一下 发现是chrome版本更新 导致驱动chromedriver不适配导致的 后来找了淘宝镜像 发现只有到114 还是不能使用 最后还是找到了 提供一下链接 不知道需不需要科学上网 我是开
  • C语言 看图说话-指针类型的扩展——数组指针

    1 指针数组是什么 答 指针类型的数组 2 数组指针是什么 答 指向数组的指针 它是扩展的指针类型 3 数组指针与基本类型指针的区别 答 在这个图片中 第一行就为基本类型的指针 不难看出 数组指针所指向的空间更大 再看后两行 前边为指针数组
  • Matlab读取CSV文件,并进行矩阵处理

    我们在进行科研时会碰到仪器生成的数据为 csv的文件 这时候使用matlab进行读取处理 核心思想是对读取到的数据按照矩阵进行处理 处理过程如下 第一步 filename D csv 读入csv数据 截取数值部分 诀窍 把矩阵想象成矩形 左
  • 在Linux(Ubuntu20.04)上编译Chromium,附相关命令学习解释

    以下内容基于Google官方文档 系统要求 8GB 以上内存 建议 16GB 以上 实测 11GB 可以稳定 build 说明见下文 100GB 以上空闲空间 实测 chromium 文件夹最少需要 65GB 已安装 Python3 和 G
  • CAN基础概念

    文章目录 目的 控制器 收发器 总线 帧格式 CAN2 0和CAN FD 波特率与采样点 工作模式 总结 目的 CAN是非常常用的一种数据总线 被广泛用在各种车辆系统中 大多数时候CAN的控制器和收发器干了比较多的工作 从而对于写代码使用来
  • 手动搭建webase(2)——节点管理服务

    前提条件 拉取代码 git clone https github com WeBankFinTech WeBASE Node Manager git 若因网络问题导致长时间下载失败 可尝试以下命令 git clone https gitee
  • 在uni-app中查询dom元素节点信息

    查询节点信息的对象 selectorQuery in component 将选择器的选取范围更改为自定义组件 component 内 返回一个 SelectorQuery 对象实例 初始时 选择器仅选取页面范围的节点 不会选取任何自定义组件
  • LableMe安装及初步使用(Mac也适用)

    环境 mac OS anaconda3 1 首先安装anaconda3 推荐此网站 下载较快https mirrors tuna tsinghua edu cn anaconda archive 下载完毕安装即可 本人之前就安装过了 在此就
  • vscode 终端无法执行pip

    1 在Windows应用中找到Windows PowerShell 右键以管理员运行 2 在命令框输入 set ExecutionPolicy RemoteSigned 回车 3 根据需要选择 这里我选择的是A 成功解决了问题 ps pow
  • Spring Boot学习之旅:(四)springboot 整合 fastjson

    springboot 默认使用的 jackson 但是听说某宝的fastjson 性能很好 而且平时用的习惯 所以来整合一下 首先在pom 中导入依赖
  • QT登陆注册界面练习

    一 界面展示 二 主要功能界面代码 include widget h include ui widget h Widget Widget QWidget parent QMainWindow parent ui new Ui Widget
  • 【Shell牛客刷题系列】SHELL13 去掉所有包含this的句子:awk与gawk命令的进阶使用

    该系列是基于牛客Shell题库 针对具体题目进行查漏补缺 学习相应的命令 刷题链接 牛客题霸 Shell篇 该系列文章都放到专栏下 专栏链接为 专栏 Linux 欢迎关注专栏 本文知识预告 首先学习了用于模式扫描和处理语言的gawk命令 然
  • Django 静态文件

    静态文件 1 什么是静态文件 对于前端已经写好了的文件 我们只是拿过来使用 那么这些文件都可以称之为叫 静态文件 静态文件可以是 bootstrap一类的前段框架 已经写好了的图片 css js 静态文件默认全都放在static文件夹下 s