一、代码中url出现的位置
1.模版【html】中
1.<a href='urk'>超链接点击跳转<a/>
2.<form action='url' method='post'>
2.视图函数中 -302重定向跳转 HttpResponseRedirect('url')
 
二、代码中url书写规范及解析规则
1.绝对地址
2.相对地址
1. /page/1 开头的相对地址,浏览器会把当前地址栏里的协议、ip和端口加上这个地址,作为最终访问地址,如果当前页面地址栏为http://127.0.0.1:8000/page/3 ,当前相对地址最终结果为 http://127.0.0.1:8000/page/1
 
2.page/1 没有/开头的相对地址,浏览器会根据当前url的最后一个/之前的内容加上该相对地址作为最终访问地址,例如当前页面地址为http://127.0.0.1:8000/topic/detail,则相对地址最终结果为http://127.0.0.1:8000/topic/page/1
 
 
 
三、URL反向解析
1.概念
url反向解析是指在视图或模版中,用path定义的名称来动态查找或计算出相应的内容
path函数语法
path('route',views,name='别名')
根据path中的name=关键字传参给url确定了一个唯一确定的名字,在模版或者视图中,可以通过这个名字反向推断出此url信息
 
2.模版中通过url标签实现地址的反向解析
在需要填写路由地址的地方 使用url标签
语法:
{% url '别名' %} #用空格隔开,url标签后 跟路由的别名,最终路径为该路由地址
{% url '别名' '其他参数' '其他参数' param = 'test ' ...%} #该语法括号内可以跟其他需要传递的参数,以空格隔开
 
3.在视图中使用 -> 调用Django的reverse方法进行解析
导包 from django.urls import reverse
语法:
reverse('别名',args=[],kwargs={})
 
reverse()方法后也可以传递该路由需要的参数
 
 
四、静态文件
如图片、css、js、视频等
 
五、静态文件配置及使用
配置在settings中
1.配置静态文件等访问路径【该配置默认存在】
通过哪个url地址找静态文件
STATIC_URL = '/static/'
说明
指定访问静态文件时时需要通过/static/xxx 或者 http://127.0.0.1:8000/static/xxx
xxx表示具体的静态资源位置
 
2.配置静态文件的存储路径 STATICFILES_DIRS
STATICFILES_DIRS保存的是静态文件在服务器端存储的位置
如果配置项的值是元组,括号结尾一定要加逗号
在项目下创建static静态文件夹,配置中使用op.path.join拼接项目路径与静态文件夹路径,静态配置文件/夹名字可以自定义
匹配逻辑:STATIC_URL配置以/static/开头的文件表明是静态文件,去STATICFILES_DIRS找到静态文件的储存路径进行加载
 
使用语法
1.直接拼接访问路径
2.通过{% static %}标签访问静态文件
1.加载static {% load static %}
2.使用静态资源路径 {% static '要使用的静态资源路径' %}
页面加载一次静态资源文件夹即可,可以写在页面顶部,其他地方可以直接使用标签进行访问
 
 

7. url反向解析和静态文件的更多相关文章

  1. Django路由系统-URL命名&URL反向解析

    命名URL和URL反向解析 前言 起始样式,HTML中的href是写死的,不能更改,如下示例代码: # urls中 urlpatterns = [ url(r'^admin/', admin.site ...

  2. django的url反向解析

    目的:防止页面中url地址改变,其他与这个URL地址有关联的都要改,减少耦合度 使用:主要分为在html中和视图函数中的使用 HTML中的使用: 如果我们在项目的url文件中通过include导入了应 ...

  3. Django url配置 正则表达式详解 分组命名匹配 命名URL 别名 和URL反向解析 命名空间模式

    Django基础二之URL路由系统 本节目录 一 URL配置 二 正则表达式详解 三 分组命名匹配 四 命名URL(别名)和URL反向解析 五 命名空间模式 一 URL配置 Django 1.11版本 ...

  4. 巨蟒python全栈开发django4:url反向解析图解&&模板渲染

    第一部分: 1.(1)知识点回顾: django回顾: ()下载安装 输入网址,a,form表单get post,爬虫 (请求)==>django项目服务端的url(r"index/& ...

  5. django命名url与url反向解析

    1.在urls.py路由中指定别名 2.在views.py视图文件中导入from django.shortcuts import render, redirect, reverse 3.也可从这里导入 ...

  6. python 之 Django框架(路由系统、include、命名URL和URL反向解析、命名空间模式)

    12.36 Django的路由系统 基本格式: from django.conf.urls import url urlpatterns = [ url(正则表达式, views视图函数,参数,别名) ...

  7. Django之url反向解析

    在urls.py文件中,在进行url映射时,为请求的url命个名,以便在模板页面或者views.py视图中可以进行反向解析,同时在修改了url映射的请求路径,名称不变的情况下,不再修改模板页面或者视图 ...

  8. 04_Django-模板变量/标签/过滤器/继承-url反向解析

    04_Django-模板变量/标签/过滤器/继承-url反向解析 视频:https://www.bilibili.com/video/BV1vK4y1o7jH 博客:https://blog.csdn ...

  9. Django url反向解析与路由分发名称空间

    url反向解析 url.py from django.conf.urls import url from django.contrib import admin from app01 import v ...

随机推荐

  1. Java反射原理和实际用法

    背景 反射在Java中非常重要,是Java区别于其他编程语言的一大特性.Java中的AOP切面.动态代理等看起来像黑魔法一样的技术,就离不开反射.字节码等.这些技术能在不侵入原有代码的情况下,做一些增 ...

  2. BZOJ1305/Luogu3153 [CQOI2009]dance跳舞 (network flow)

    #define T 1001 #define S 0 struct Edge{ int nxt,pre,w; }e[500007]; int cntEdge,head[N]; inline void ...

  3. Luogu1099 树网的核 (暴力?,floyd?)(还未想正解,暴力就A了)

    阅读理解两小时,手敲暴力思考5分钟.然后\(n^3\)就A了 暴力代码 #include <iostream> #include <cstdio> #include <c ...

  4. Excel 名称管理器是什么,并实现一个级联选择框

    名称 在 Excel 中,每一个单元格都有自己的名称.表格横向是字母,纵向是数字,组合起来就是一个单元格的名称. A13 所代表的是 A 列,13 行的单元格.把一组单元格组合起来,加上一个名称,在 ...

  5. laravel框架(完整上传到数据库,不提交图片)(以提交员工信息为例)

    第一步:使用PHP终端创建一个名为blog的框架 composer create-project --prefer-dist laravel/laravel blog 7.x 创建好之后,在框架中找到 ...

  6. KingbaseES V8R6 维护管理案例之---Kstudio在CentOS 7启动故障

    ​ 案例说明: 在CentOS 7上安装KingbaseES V8R6C006数据库后,启动Kstudio图形界面启动失败,gtk动态库加载失败,安装gtk相关动态库后,问题解决. 适用版本: Kin ...

  7. 【读书笔记】C#高级编程 第二十四章 文件和注册表操作

    (一)文件和注册表 对于文件系统操作,相关的类几乎都在System.IO名称空间中,而注册表操作由System.Win32名称空间中的类来处理. (二)管理文件系统 System.MarshalByR ...

  8. Linux云主机安全入侵排查步骤

    导语 经常有用户报障系统被植入恶意程序,如挖矿软件.ddos攻击病毒.syn映射攻击病毒等,可以按照以下流程为用户排查入侵病毒类型: 一.定位病毒进程 对于用户反馈云主机性能卡顿,CPU和内存占用较高 ...

  9. Dart 2.18 正式发布

    互操作性增强.平台特定的网络组件.优化类型推断,以及空安全语言里程碑的近期更新 文/ Michael Thomsen, Google Flutter & Dart 产品经理 Dart 2.18 ...

  10. electron 起步

    electron 起步 为什么要学 Electron,因为公司需要调试 electron 的应用. Electron 是 node 和 chromium 的结合体,可以使用 JavaScript,HT ...