博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Django的路由系统01-路由分发
阅读量:6921 次
发布时间:2019-06-27

本文共 1913 字,大约阅读时间需要 6 分钟。

1. Including other URLconfs

原urls.py文件,多个app的路由系统写在一起,不方便管理

范例:

from django.conf.urls import urlfrom django.contrib import adminfrom app01 import viewsfrom app02 import views as app02_viewsurlpatterns = [    url(r'^admin/', admin.site.urls),    url(r'^publisher_list/$', views.PubList.as_view()),    url(r'^edit_publisher/$', views.EditPub.as_view()),    url(r'^book_list/$', views.BookList.as_view()),    url(r'^templates/$', views.Templates.as_view()),    url(r'^book/$', app02_views.book),]

2. 使用include

使用:

2.1 注释app01的相关配置

from django.conf.urls import urlfrom django.contrib import adminfrom app02 import views as app02_viewsurlpatterns = [    url(r'^admin/', admin.site.urls),    # url(r'^publisher_list/$', views.PubList.as_view()),    # url(r'^edit_publisher/$', views.EditPub.as_view()),    # url(r'^book_list/$', views.BookList.as_view()),    # url(r'^templates/$', views.Templates.as_view()),    url(r'^book/$', app02_views.book),]

2.2 在app01目录中创建urls.py文件

from django.conf.urls import urlfrom app01 import viewsurlpatterns = [    url(r'^publisher_list/$', views.PubList.as_view()),    url(r'^edit_publisher/$', views.EditPub.as_view()),    url(r'^book_list/$', views.BookList.as_view()),    url(r'^templates/$', views.Templates.as_view()),]

但是仅此而已还不够,启动Django项目,发现不能访问app01中的链接

2.3 导入urls模块的include方法

方法一:

from django.conf.urls import url, includefrom django.contrib import adminfrom app02 import views as app02_viewsurlpatterns = [    url(r'^admin/', admin.site.urls),    # 这种方式不明确,不能根据程序区分    url(r'^', include('app01.urls')),    url(r'^book/$', app02_views.book),]

方法二:

from django.conf.urls import url, includefrom django.contrib import adminfrom app02 import views as app02_viewsurlpatterns = [    url(r'^admin/', admin.site.urls),    # 这种方式可以根据不同的程序访问不同的url    url(r'^app01/', include('app01.urls')),    url(r'^book/$', app02_views.book),]

  

 

转载于:https://www.cnblogs.com/gongniue/p/10933500.html

你可能感兴趣的文章
云计算数据中心运维管理要点
查看>>
cisco 4507 (生产环境)
查看>>
Jedis操作redis--Set篇
查看>>
48. 源代码解读-RocketMQ-client接收消息流程
查看>>
Juery 基础
查看>>
wdcp后台访问安全设置即限制域名/IP访问设置及清除方法
查看>>
memcache
查看>>
jquery 删除字符串最后一个字符的方法
查看>>
CentOS使用光盘rpm安装g++
查看>>
Asp.net页面和Html页面之间的关系
查看>>
解决远程无法登陆mysql服务器的问题和重置密码
查看>>
zabbix监控mysql主从状态
查看>>
mycat启动服务,后台日志报错Bit Server VM warning: ignoring option MaxPermSize
查看>>
Bash的历史命令 history
查看>>
红色渐变到绿色
查看>>
Sqoop数据分析引擎安装与使用
查看>>
SQL Server 命名实例更改端口进行发布订阅
查看>>
phpMyAdmin简明安装教程
查看>>
centos7修改内核参数
查看>>
ESLint – 可扩展的 JavaScript & JSX 校验工具
查看>>