当前位置: 首页 > news >正文

小型门户网站建设方案热点新闻

小型门户网站建设方案,热点新闻,如何做家教网站,高级前端开发在线培训目录 Django路由系统精讲1. Django 路由系统应用1)配置第一个URL实现页面访问2)正则与正则分组使用3)正则捕获组使用 2. path()与re_path() Django路由系统精讲 在《URL是什么》一节中,我们对 URL 有了基本的认识,在本…

目录

  • Django路由系统精讲
    • 1. Django 路由系统应用
        • 1)配置第一个URL实现页面访问
        • 2)正则与正则分组使用
        • 3)正则捕获组使用
    • 2. path()与re_path()

Django路由系统精讲

在《URL是什么》一节中,我们对 URL 有了基本的认识,在本节将对 Django 的路由系统展开详细的讲解,让我们更加清楚的了解 URL 在 Django 中到底是如何应用的。

1. Django 路由系统应用

一个用户向 Web 站点发送请求,是通过 URL 实现的,当 Web 服务器端接收到用户请求后,它又是怎么处理的呢?通过 MTV 的设计模式,我们可以得知,首先用户请求会到达相应的视图函数,那么视图函数又是怎样找到相应的访问资源的呢,在这里就用到了“路由系统”。

Django 中利用 ROOT_URLCONF 构建了 URL 与视图函数的映射关系。在django.conf.urls 中封装了路由模块,新建的Django 项目中提供了 urls.py(创建项目后自动生成的配置文件) 路由配置文件,urls.py 文件中定义了一个 urlpatterns 的列表,它是由 url( ) 实例对象组成的列表,Django 中 url 的定义就是在这个列表完成的。

from django.conf.urls import url
urlpatterns=[
url(r '^admin/',admin.site.urls),
...
]

后台 Admin 管理系统的路由就定义在了列表第一个位置,下面我们对路由的语法格进行简单说明:

url(regex,view,name=None)

上述 url 的参数解析如下:

  • regex,匹配请求路径,用正则表达式表示;
  • view,指定 regex 匹配路径所对应的视图函数的名称;
  • name,是给 url 地址起个别名,在模板反向解析的时候使用,这个知识点后面还有介绍。

1)配置第一个URL实现页面访问

在 urls.py 的同级目录下,新建 views.py 文件,把它作为编写视图函数的 View 层,然后在 views.py 中编写如下代码:

from django.http import HttpResponse
def page_view(request):html='<h1>欢迎来到,C语言中文网,网址是http://c.biancheng.net</h>'return HttpResponse(html)

假如现在有一个名叫 “myject”的 Django 项目,首先需要在 urls.py 文件中导入 views.py, 这么做的目的是把 URL 与视图层进行绑定,然后在 urls.py 的 urlpatterns 中编写如下代码:

from django.conf.urls import url
from django.contrib import admin
from myject import views
urlpatterns = [url(r'admin/', admin.site.urls),url(r'^page$/',views.page_view),]

上述代码解析:

  • 代码的前 3 行分别对 URL 模块、admin 模块、以及视图层 views 做了导包操作;
  • 路径地址被定义为 page,也就是在本机浏览器地址栏输入:http://127.0.0.1:8000/page 进行访问,views.page_view将 page/ 路径与对应的视图函数进行了关联。

那么通过上述的代码就完成了路由的配置。在项目运行后,通过访问对应的地址就可以得到相应的页面了,如下图所示:

在这里插入图片描述

图1:C语言中文网欢迎你

2)正则与正则分组使用

在 Django 的路由系统中,正则匹配得到了充分的使用,比如要匹配任意 1000个页面,那么正则匹配路由地址可以写为:

url(r'^page(\d+)',views.page_view)

同时也可以使用正则分组的方式匹配地址:

r'^(\d+)/(\w{3})/(\d+)' 匹配类似于 http://127.0.0.1:8000/521/Django/1314的地址

3)正则捕获组使用

捕获组:

url(r'^person/(?P<name>\w+)/(?P<age>\d{1,2})',views.person_view)

在视图函数层,用函数关键字传参的方法,将 name 与 age 传递给视图函数。

def person_view(request,name,age):s = '姓名: ' + names += ' 年龄: ' + agereturn HttpResponse(s)

一个分组表示一个参数,多个参数需要使用多个分组,并且使用 / 隔开。

2. path()与re_path()

Django 的路由系统使用方法简洁且容易理解,这大大降低了如何配置 URL 的难度。

在 Django 2.0 版本中推出了新的用法 path() 和 re_path(),进一步提升了 Django 的效率与使用的简洁性。2.0 版本以后虽然推出了新的方法,但是 1.0 版本的 URL 用法仍然可以在 2.0 版本中使用,向前做了兼容。

提示:我们可以简单的理解为:re_path() 等同于 1.0 版本的 url 正则匹配方法,而 path() 有其特定的使用方法,在后续的章节将会对其进行详细的介绍。

http://www.tj-hxxt.cn/news/68524.html

相关文章:

  • 驰够网官方网站优化大师电视版
  • 山东网站建设最便宜网络营销方案
  • 布吉网站建设哪家公司靠谱seo网站推广优化就找微源优化
  • 2022最近比较火的营销事件百度seo培训公司
  • 旅游网站建设注册网络营销收获与体会
  • 外国做的中国动画视频网站网站生成
  • 北京电商营销中心舆情优化公司
  • 建设一个货架网站西安高端模板建站
  • 常见网站建设武汉 网络 推广
  • 长春网站怎么推广近期国际热点大事件
  • 溧阳网站开发搜索大全引擎
  • 微网站建设哪家好免费发布推广信息的软件
  • 张掖网站建设0936e凡科建站官网
  • 做网站江西百度推广合作
  • 怎样评价一个网站做的好与不好济南seo网站优化公司
  • 花都商城网站建设网络营销产品的首选产品
  • 做网站 要域名 主机 还有啥营销策划培训
  • 什么网站可以做医疗设备的多合一seo插件破解版
  • 企业网站策划论文中国免费网站服务器2020
  • 学做土建资料员的网站广告营销顾问
  • 银行门户网站是什么意思微网站建站平台
  • 广告公司网站建设费用培训计划模板
  • 网址怎么做成快捷方式网络seo优化平台
  • 如何提高外贸网站排名营销方案策划书
  • 凡客网站建设怎么样常用的网站推广方法
  • 中山网站优化营销搜索引擎
  • 深圳企业馆设计公司有必要买优化大师会员吗
  • 网站建设免费按词收费微博指数
  • 上海财务公司广东网站seo
  • 网站建设目录深圳营销推广引流公司