Django后端开发——静态文件

这篇具有很好参考价值的文章主要介绍了Django后端开发——静态文件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


参考资料

B站网课:点击蓝色字体跳转
或者复制网址在浏览器访问:https://www.bilibili.com/video/BV1vK4y1o7jH?p=13&vd_source=597e21cf34ffcdce468ba00be2177e8a


静态文件

什么是静态文件

如:图片、css、js、音频、视频

静态文件配置 - settings.py中

Django后端开发——静态文件,Django后端开发,django,python,后端
Django后端开发——静态文件,Django后端开发,django,python,后端

STATIC_URL = 'static/'
STATICFILES_DIRS = (os.path.join(BASE_DIR,'static'),)

以下一行代码是手动添加的,指定了一个目录——‘static’,将在该目录下查找静态文件

STATICFILES_DIRS = (os.path.join(BASE_DIR,'static'),)

静态文件访问

模板中访问静态文件 - img标签为例

方案1 - 直接拼接访问路径

Django后端开发——静态文件,Django后端开发,django,python,后端

static目录下

在mysite3下-new-directory-static(与前面定义的目录名要相一致)
Django后端开发——静态文件,Django后端开发,django,python,后端
在static目录下可添加文件夹(image、css、js等)

在火狐浏览器找到图片另存至桌面,重命名,复制图片至static下的image文件夹

在课程中的示例图片为jpg格式,但是我在网站上找到的图片是webp格式,最终实践可知并不会产生影响

test_static.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>测试静态文件</title>
</head>
<body>

<img src="http://127.0.0.1:8000/static/image/cow.webp"
     width="200px" height="200px">

<img src="/static/image/cow.webp" width="200px"
     height="200px">

</body>
</html>
views.py
from django.shortcuts import render


def test_static(request):

    return render(request,'test_static.html')
urls.py
from django.contrib import admin
from django.urls import path
from . import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('test_static',views.test_static)
]
效果

Django后端开发——静态文件,Django后端开发,django,python,后端
ctrl+shift+i 可调出开发者工具
Django后端开发——静态文件,Django后端开发,django,python,后端

方案2 - 通过{% static %}标签访问静态文件

Django后端开发——静态文件,Django后端开发,django,python,后端

test_static.html

只需修改html文件,其他访问操作同上(views.py等)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>测试静态文件</title>
</head>
<body>

<img src="http://127.0.0.1:8000/static/image/cow.webp"
     width="200px" height="200px">

<img src="/static/image/cow.webp" width="200px"
     height="200px">

{% load static %}
<img src="{% static 'image/cow.webp' %}"
     width="200px" height="300px">

</body>
</html>

添加内容:

{% load static %}
<img src="{% static 'image/cow.webp' %}"
     width="200px" height="300px">

这里为了区别方案1的两张图片和方案2的一张图片,特意将方案2的图片height设置为300px

效果

Django后端开发——静态文件,Django后端开发,django,python,后端
从左至右:绝对路径 相对路径 Django标签
推荐:方案2——更动态

若现在要求statics的请求才是静态资源请求:
需在settings.py中进行修改:

STATIC_URL = 'static/'
STATICFILES_DIRS = (os.path.join(BASE_DIR,'static'),)

改为

STATIC_URL = 'statics/'
STATICFILES_DIRS = (os.path.join(BASE_DIR,'static'),)

再次刷新页面
Django后端开发——静态文件,Django后端开发,django,python,后端
只有用标签写的图片能正常访问,标签更动态

小结

本文介绍了静态文件的配置和静态文件访问的两种方案(三种方法)
其中用标签访问静态文件是最为推荐的方法,因为其更加动态文章来源地址https://www.toymoban.com/news/detail-826289.html

到了这里,关于Django后端开发——静态文件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

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

    创建一个新项目 Day06DjangoPro01 每一个应用中都可以新建一个static和templates 如果想要额外再加一些静态文件路径,就再加一个STATICFILES_DIRS Apptemplatesindex.html 一般用 link rel=\\\"stylesheet\\\" href=\\\"{% static \\\'css/index.css\\\' %}\\\" Appstaticcssindex.css 根路由 Day06DjangoPro01urls.py Appviews.py 在项目根目录

    2024年02月10日
    浏览(89)
  • django静态文件配置和使用

    一、首先需要了解的知识点是: 1、出于对效率和安全的考虑,django管理静态文件的功能仅限于在开发阶段的debug模式下使用,且需要在配置文件的INSTALLED_APPS中加入django.contrib.staticfiles(django工程创建后默认已经安装),网站正式部署上线后,静态文件是由Nginx等服务器管理。

    2024年02月02日
    浏览(43)
  • Django基础入门⑮:更新书籍信息 删除书籍条目信息 Django静态文件配置

    🏘️🏘️个人简介:以山河作礼。 🎖️🎖️: Python领域新星创作者,CSDN实力新星认证,阿里云社区专家博主,CSDN内容合伙人 🎁🎁:Web全栈开发专栏:《Web全栈开发》免费专栏,欢迎阅读! 🎁🎁: 文章末尾扫描二维码可以加入粉丝交流群,不定期免费送书。 更改原有的书

    2024年02月16日
    浏览(47)
  • Django的静态文件目录(路径)如何配置?

    通常用下面的三条语句配置Django的静态文件目录 那么这三条语句分别的作用是什么呢? 请参考博文 https://blog.csdn.net/wenhao_ir/article/details/131986394 【搜索 注册静态文件目录】

    2024年02月06日
    浏览(54)
  • 二挡起步——pythonweb开发Django框架,前端原生+Django后端框架002(附带小案例)

     大家好,我是csdn的博主: lqj_本人 这是我的个人博客主页: lqj_本人的博客_CSDN博客-微信小程序,前端,python领域博主 lqj_本人擅长微信小程序,前端,python,等方面的知识 https://blog.csdn.net/lbcyllqj?spm=1011.2415.3001.5343 哔哩哔哩欢迎关注: 小淼Develop 小淼Develop的个人空间-小淼Develop个

    2024年02月03日
    浏览(68)
  • Django后端开发——模型层及ORM介绍

    B站网课:点击蓝色字体跳转 或者复制链接到浏览器打开:https://www.bilibili.com/video/BV1vK4y1o7jH?p=15vd_source=597e21cf34ffcdce468ba00be2177e8a 一般都有python3-dev,没有default-libmysqlclient-dev,需要安装default-libmysqlclient-dev 然后安装mysqlclient 若安装default-libmysqlclient-dev时报错‘pkg-config: not found’

    2024年02月19日
    浏览(109)
  • Django高级扩展之静态文件和ajax使用

    目录 使用静态文件 创建静态文件目录 Settings.py配置 创建css文件 路由与视图 设置路由 视图 模板使用静态文件 调用css 调用js 调用图片 优化路径 加载标签 修改文件路径 修改图片路径 修改js路径 修改css路径 使用Ajax 应用场景 示例 路由 视图 模板 Javascript 总结 css、js、图片、

    2024年02月09日
    浏览(47)
  • Datawhale Django后端开发入门Task01 Vscode配置环境

    首先呢放一张运行成功的截图纪念一下,感谢众多小伙伴的帮助呀,之前没有配置这方面的经验 ,但还是一步一步配置成功了,所以在此以一个纯小白的经验分享如何配置成功。 1.选择要建立项目的文件夹,打开文件找到目标文件夹   如上图所示,我这里是自己选择的命名

    2024年02月13日
    浏览(48)
  • Datawhale Django 后端开发入门 Task05 DefaultRouter、自定义函数

    一、DefaultRouter 是Django REST framework中提供的一个路由器类,用于自动生成URL路由。路由器是将URL与视图函数或视图集关联起来的一种机制。Django REST framework的路由器通过简单的配置可以自动生成标准的URL路由,从而减少了手动编写URL路由的工作量。 1. 使用方法 导入DefaultRout

    2024年02月12日
    浏览(52)
  • Django后端开发——mysql数据库连接遇到的问题及解决

    stackflow帖子:https://stackoverflow.com/questions/39281594/error-1698-28000-access-denied-for-user-rootlocalhost 报错: 数据库拒绝root用户的连接 settings.py中关于数据库的配置: 可以看到root用户的密码为123456 但是在mysql数据库里面查看用户信息,root的密码为空 这样的不匹配导致连接失败 之前尝试

    2024年02月20日
    浏览(68)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包