python django 配置文件和url参数配置

配置文件

配置视图查找的路径

静态资源的映射路径

示例如下

 

 

第一个参数正则表达式

路由匹配用正则需要引入re_path,以下规则为0-9的4位数字

 

第一个参数正则表达式分组名

在Python正则表达式中,命名正则表达式组的语法是(?P<name>pattern),组name的名称,并且 pattern是要匹配的模式

year为匹配到的数字,此处的名字必须为year

 

 

加括号参数传递

视图参数个数必须匹配

 

展示结果

第三个参数别名

配置固定name参数名称

此处用来映射路由对应的匹配规则,这样可以避免修改链接时候 去改html页面

url映射分发

url映射到对应站点,避免url匹配在一个文件里太多,同时多个项目一个出错 影响其他项目

分发在blog里的url规则

 

转载于:https://www.cnblogs.com/FashionDoo/p/10590031.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Django 中,可以使用映射文件(mapping file)将 URL 映射到视图函数上。常用的映射文件是 urls.py 文件。 一般来说,一个 Django 项目中会有多个应用程序(app),每个应用程序都有自己的 urls.py 文件。在项目的主 urls.py 文件中,可以通过 include() 函数引入应用程序的 urls.py 文件。 例如,假设我们有一个应用程序叫做 blog,其中定义了一个名为 post_detail 的视图函数。在 blog 应用程序的 urls.py 文件中,可以这样定义: ```python from django.urls import path from .views import post_detail urlpatterns = [ path('post/<int:pk>/', post_detail, name='post_detail'), ] ``` 在项目的主 urls.py 文件中,可以通过 include() 函数引入 blog 应用程序的 urls.py 文件,并将其与一个 URL 前缀(如 /blog/)关联起来: ```python from django.urls import include, path urlpatterns = [ path('blog/', include('blog.urls')), # ... ] ``` 这样,当用户访问 /blog/post/1/ 时,Django 就会将该 URL 映射到 blog 应用程序中的 post_detail 视图函数上。其中,1 是 post 的主键值。 除了使用 path() 函数,还可以使用 re_path() 函数来支持正则表达式匹配。例如,可以在 blog 应用程序的 urls.py 文件中定义一个名为 archive 的视图函数,并将其与 /archive/ 或 /archive/2022/ 这样的 URL 关联起来: ```python from django.urls import re_path from .views import archive urlpatterns = [ re_path(r'^archive/$', archive), re_path(r'^archive/(?P<year>[0-9]{4})/$', archive), ] ``` 在项目的主 urls.py 文件中,可以通过 include() 函数引入 blog 应用程序的 urls.py 文件,并将其与一个 URL 前缀(如 /blog/)关联起来: ```python from django.urls import include, path urlpatterns = [ path('blog/', include('blog.urls')), # ... ] ``` 这样,当用户访问 /blog/archive/ 或 /blog/archive/2022/ 时,Django 就会将该 URL 映射到 blog 应用程序中的 archive 视图函数上。其中,2022 是年份值,可以在视图函数中通过 year 参数获取。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值