栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Django11——创建应用及正向路由

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Django11——创建应用及正向路由

文章目录
  • 1、正向路由的概念
  • 2、查看根路由
  • 3、为每个app创建子路由
    • 主路由和子路由的操作方法
    • 示例

在网站开发过程中,每个业务一般会单独用一个URL地址来进行管理,而URL的形式非常像电脑目录一层一层的进行管理,所以在实际开发中,我们建议每一组独立的业务分成一个单独的URL来进行管理。

https://www.douban.com/note/673550797/
https://www.douban.com/note/665841994/
https://www.douban.com/gallery/topic/5317/
https://www.douban.com/gallery/all?column_id=25
https://www.douban.com/people/49451241

在Django中,把一个网站称之为project,通常会利用app(application,应用)分离业务,把一个网站中的业务称之为app。

通常会新建一个apps文件夹,专门用来存储各种应用。在templates下,为每个应用建立文件夹,专门用来存储各个应用下的模板文件。

1、正向路由的概念

维护视图函数映射关系的结构,在web框架中,称之为路由。
Django把这种映射关系叫做URLConf(URL配置),URL 配置把 URL 映射到相应的视图函数上。我们以这种方式告诉 Django,“访问这个URL 时调用这些代码,访问那个 URL 时调用那些代码”。

2、查看根路由

在settings.py文件中通过ROOT_URLCONF指定根级url的配置。

3、为每个app创建子路由

类似个人电脑管理文件的方式,每组类似功能的资源应该放置在一个特定的目录下,那么对于网站的URL资源地址管理来说,也是建议用这种模式来进行操作。
一般的做法:
在主路由里,分配资源的主标识名称
在各app里的子路由里,分配资源的次标识名称

https://www.douban.com/movie/cinema/
https://www.douban.com/movie/explore/
https://www.douban.com/movie/tv/
https://www.douban.com/movie/chart/

在Django中,利用django.conf.urls里提供的include方法来把主路由和子路由进行衔接。

主路由和子路由的操作方法

在应用中创建urls.py文件,定义本应用中的urlconf,再在项目的根urls.py中使用include()。使用include可以去除urlconf的冗余。

匹配过程:先与主URLconf匹配,成功后再用剩余的部分与应用中的URLconf匹配。

操作步骤如下:

  • 在app里创建一个管理子路由的py文件,一般命名就叫urls.py;
  • 在app的urls.py里同样命名一个urlpatterns的全局变量,也是列表类型;
  • 由于还是要借助django的URLConf结构,所以导入django.urls下的path方法;
  • 开始定义自己的子路由映射关系;
  • 将app里的urls模块通过include和主路由建立关系;
示例

(1)创建应用

python manage.py startapp study

(2)在根路由中包含子路由

path('study/',include('apps.study.urls')),

(3)编写子路由


(4)编写视图

(5)访问http://127.0.0.1:8001/study/

(6)解析匹配过程

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/923460.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号