django-命名空间与反向解析-模板反向解析-视图反向解析

小结

普通的反向解析
在路由中给一个路径起了别名
path('url/', views.url, name="别名")
1,在模板中如何进行反向解析
2,在视图函数中如何进行反向解析
?
1,在模板中反解
{% url "别名" %}
2,在视图中反解,分两步
a,导入一个函数
from django.urls import reverse
b,通过reverse来进行反解
reverse("别名")


起别名的操作
1,总路由分发给分支路由(应用下的路由文件),总路由命名空间怎么写?
2,分支路由,别名怎么写
?
1,命名空间namespace的意思
name有别名的意思,space有空间的意思
具体的写法,例子:
path(路径,include("应用名.urls", namespace="命名空间"))
关键在namespace的定义
2,分支路由需要做的事情
a
app_name = 应用名称
b,在对应的规则上添加别名,例子
path(路径,视图函数,name="别名")


namespace 总路由分发给分支路由

给分支路由起一个别名:

    path("appTwo/", include("appTwo.urls", namespace="appTwo")),

django-命名空间与反向解析-模板反向解析-视图反向解析_第1张图片

name 分支路由

django-命名空间与反向解析-模板反向解析-视图反向解析_第2张图片

反向解析-模板

模板页的反向解析

{% url "命名空间:别名" %}

前面的两个步骤给

总路由

分支路由

都起名字了

现在需要在前端

根据名字

反向解析获得路径的正确地址

》视图代码
django-命名空间与反向解析-模板反向解析-视图反向解析_第3张图片

》模板代码

{% url "命名空间:别名" %}

django-命名空间与反向解析-模板反向解析-视图反向解析_第4张图片

》效果

模板页动态的拿到了路径

django-命名空间与反向解析-模板反向解析-视图反向解析_第5张图片

后续,如果把路由的匹配路径改了,也不用动前端

视图函数中的-反向解析

from django.urls import reverse

》在视图中根据别名来反转路径

利用别名找路径

》视图的代码
django-命名空间与反向解析-模板反向解析-视图反向解析_第6张图片

》访问页面

django-命名空间与反向解析-模板反向解析-视图反向解析_第7张图片

》打印的结果

django-命名空间与反向解析-模板反向解析-视图反向解析_第8张图片

你可能感兴趣的:(django-命名空间与反向解析-模板反向解析-视图反向解析)