小白网-奉贤部落-奉贤免费信息发布平台

查看: 57|回复: 0

Django之url别名抵触处理方式

[复制链接]

2万

主题

0

回帖

8万

积分

论坛元老

Rank: 8Rank: 8

积分
88256
发表于 2025-7-26 13:04 | 显示全部楼层 |阅读模式
命名url 空可以让分歧app下的不异url别名互不抵触他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。
下面是一个案例来具体说明:
倘使有一个名为myproject的Django项目,那末这个项目中有两个利用法式:app01和app02他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。那末我们应当做这样的线路分派:
项目标总urls条目为/myproject/myproject/urls.py,其内容以下:
from django.contrib导入adminfrom django.urls导入途径,includeURL patterns =[path(' admin/',admin.site.urls),#背景治理系统 path ('app01/',include ('app01他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。URL '),), path ('app02/'),include ('app02他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。网址'),),]
app01下的urls条目是/myproject/app01/urls.py,其内容以下:
从django.urls导入途径从app01.views导入auth,viewapp _ name = ' app 01 ' #[/k0/]URL形式= [ path ('register/'),auth.register,name='register '), path('login/',auth.login,name='login '),path('logout/',auth.logout,name='logout '),path(' '
app02下的urls条目是/myproject/app02/urls.py,其内容以下:
从django.urls导入途径从app02.views导入auth,viewapp _ name = ' app 02 ' #[/k0/]URL形式= [ path ('register/'),auth.register,name='register '), path('login/',auth.login,name='login '),path('logout/',auth.logout,name='logout '),path(' '
请仔细看上面的案例他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。app01和app02下有url别名登录、注销和注册他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。那末Django在模板中的重定向函数、反向函数、url函数若何按照别名找到正确的url呢?
为领会决url别名命名抵触,Django引入了url命名空的概念他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。我们需要做的是了解它,并遵守Django的法则来处理url别名抵触他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。
首先:依照上面案例的方式写URL,把项目标urls.py和利用的urls.py分隔写他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。
其次,在利用法式urls.py文件中增加一行app_name = app01 #,即利用app01的子目录称号他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。
最初;一切益用URL别名的地方都以“app01:login”的方式编写;
# reverse反向url剖析函数:reverse(' app 01:log in ')reverse(' app 02:log in ')# redirect重定向函数:redirect(' app 01:index ')他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。# Django模板的url写为 {%URL' app01: logout'%}
上面的方式有点不方便,虽然在利用别名的时辰app子目录的称号写的比力多他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。可是这类方式完全可以处理URL别名抵触他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。激烈倡议一路头就依照这个标准来写项目他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。不要等到项目越做越大的时辰,才发现很多现有的app用不异的url别名酿成的bug他早就发现系统有个隐藏的缝隙私下花了好几个早晨优化了代码。这个时辰再做修改会很麻烦!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|小白网-奉贤部落-奉贤免费信息发布平台  

GMT+8, 2025-11-11 16:12 , Processed in 0.105299 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表