1. Including other URLconfs

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

范例:

from django.conf.urls import url
from django.contrib import admin
from app01 import views
from app02 import views as app02_views urlpatterns = [
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 url
from django.contrib import admin from app02 import views as app02_views urlpatterns = [
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 url
from app01 import views urlpatterns = [
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, include
from django.contrib import admin
from app02 import views as app02_views urlpatterns = [
url(r'^admin/', admin.site.urls),
# 这种方式不明确,不能根据程序区分
url(r'^', include('app01.urls')),
url(r'^book/$', app02_views.book),
]

方法二:

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

  


Django的路由系统01-路由分发的更多相关文章

  1. ASP.NET的路由系统:路由映射

    总的来说,我们可以通过RouteTable的静态属性Routes得到一个基于应用的全局路由表,通过上面的介绍我们知道这是一个类型的RouteCollection的集合对象,我们可以通过调用它的MapP ...

  2. ASP.NET Web API路由系统:路由系统的几个核心类型

    虽然ASP.NET Web API框架采用与ASP.NET MVC框架类似的管道式设计,但是ASP.NET Web API管道的核心部分(定义在程序集System.Web.Http.dll中)已经移除 ...

  3. 创建自定义路由处理程序(Creating a Custom Route Handler) | 定制路由系统| 高级路由特性 |精通ASP-NET-MVC-5-弗瑞曼

    自定义实现 IRouteHandler

  4. django框架--路由系统

    目录 一.路由系统理解 二.路由系统功能划分 三.路由表创建 创建工具 二级路由 路由别名 动态路由及重定向 四.自定义错误页面 五.图示路由系统在框架中的定位 六.路由系统的进阶想法 一.路由系统理 ...

  5. django 路由系统,数据库操作

    一.修改配置 数据库 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME':'dbname', 'USER': ...

  6. ASP.NET MVC , ASP.NET Web API 的路由系统与 ASP.NET 的路由系统是怎么衔接的?

      ASP.NET MVC 的路由实际上是建立在 ASP.NET 的路由系统之上的. MVC 路由注册通常是这样的: RouteTable 是一个全局路由表, 它的 Routes 静态属性是一个 Ro ...

  7. django中路由系统和视图的对应关系(值的传递)-->主要内容(位置参数、关键字参数、额外参数、include分组[urls的分发]、命名分组、反向解析、APPEND_SLASH)

    路由系统也就是 urls.py文件,视图就是 views.py文件 路由系统里面要注意的事项 urlpatterns中的元素按照书写顺序从上往下逐一匹配正则表达式,一旦匹配成功则不再继续. 若要从UR ...

  8. django路由系统及分发路由的本质

    路由系统 当我们启动一个django项目后,想要通过浏览器访问到django项目中的资源 就需要在django中的urls项目中进行路由配置 urlpatterns = [ url(r'^admin/ ...

  9. django上课笔记1-目录介绍-路由系统-ORM操作

    一.Django目录介绍 django-admin startproject mysite # 创建名为mysite的项目 cd mysite # 切换到该目录下 python manage.py s ...

随机推荐

  1. 吴裕雄 python 神经网络——TensorFlow 卷积神经网络手写数字图片识别

    import os import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data INPUT_N ...

  2. UFT场景恢复

    场景恢复: 在脚本运行中可能会出现一些非预期事件.错误.程序崩溃等情况,阻止脚本继续执行下去,在此情况下脚本可能暂停执行, 直到某些界面被操作之后才会继续执行下去,为了处理这一类事件因此存在场景恢复. ...

  3. 新iPhone又要提价,苹果靠什么基业长青?

    在股神巴菲特一番煽情言论之后,苹果股价再创新高,达到187.67美元,总市值约为9450亿美元,正大踏步向着1万亿美元市值的目标前进,这是一条科技.经济.财经.社会等领域的头条新闻,遭到全球各界人士的 ...

  4. 深入JVM内核--常用JVM配置参数

    Trace跟踪参数 -verbose:gc -XX:+printGC 可以打印GC的简要信息 [GC 4790K->374K(15872K), 0.0001606 secs] [GC 4790K ...

  5. 使用mybatis的动态sql解析能力生成sql

    需求: 计算平台,有很多表,打算提供一个基于sql的服务接口, sql不能完全在配置页面写死, 要能根据参数不同执行不同的语义,防止sql个数爆炸 把mybatis原码down下来, 改造一下测试用例 ...

  6. SQL提高性能

    1.对外键建立索引,大数据量时性能提高明显(建索引可以直接[Merge Join],否则还须在查询时生成HASH表作[Hash Join]) 2.尽量少使用inner join,使用left join ...

  7. PowerDesign15连接数据库并反向表结构详细

    10.0 sql2008 11.0 sql2010 这的服务器名称,复制到上面 这里的默认数据库不要改.Powerdesign会把自已的数据也存在默认的数据库里 一般不用改 测试 成功 这里ODBC的 ...

  8. 整理struct sockaddr和struct sockaddr_in

    struct sockaddr定义在/usr/include/linux/socket.h struct sockaddr { unsigned short ss_family; - } struct ...

  9. php--0与空的判断

    使用empty()函数判断,两者都是true $a=0; if(trim($a)=="") { echo '数字0'; }

  10. 使用apktool反编译apk文件

    Apktool https://ibotpeaches.github.io/Apktool/install/ 下载地址:Apktool https://bitbucket.org/iBotPeache ...