第二节课url路由

URL:统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它

URL格式:

URL解释:
schema://host[:port#]/path/.../[?query-string][#anchor]
schema:指定使用的协议(例如:http, https, ftp)
host:Http服务器的IP地址或者域名
port:端口号,http默认是80端口
path:访问资源的路径
query-string:发送给http服务器的数据
anchor:锚点# 

urls.py的作用

URL配置(URLconf)就像是Django所支撑网站的目录。
它的本质是URL模式以及要为该URL模式调用的视图函数之间的映射表。
以这样的方式告诉Django,
对于那个URL调用那段代码。url的加载就是从配置文件中开始

url分析:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

include 作用:一个project有一个总的urls.py各个app也可以自己建立自己的urls.py 用include()函数在project的urls.py文件进行注册

在这里插入图片描述

子app下的路由urls.py 以及 视图views.py

在这里插入图片描述
在这里插入图片描述

kwargs的作用:传递一个Python 字典作为额外的参数传递给视图函数

Kwargs为字典类型
可以传递额外的参数到views中
使用include的时候
需要统一给下面的url一些参数的时候
显得尤其有用

from django.urls import path
from . import views
urlpatterns = [
    path('xiazai/',views.test, {'switch': 'True'}), #传参  字典
    path('xiazai2/',views.test2, name="xiazai2"),
    path('test3/',views.test3),


]

name的作用:给一个匹配的url地址取名字 一般用于模板,也可以使用reverse进行页面重定向

from django.urls import path
from . import views
urlpatterns = [
    path('xiazai/',views.test, {'switch': 'True'}), #传参  字典
    path('xiazai2/',views.test2, name="xiazai2"),
    path('test3/',views.test3),


]

在这里插入图片描述

name参数可以给这个url取一个合适的名字。
通过给url取名字,以后在view或者模板中使用这个URL,就只需要通过这个名字就可以了。
这样做的原因是防止url的规则更改,
会导致其他地方用了这个url的地方都需要更改,但是如果取名字了,就不要做任何改动了。

猜你喜欢

转载自blog.csdn.net/qq_42662411/article/details/104404475