Django的路由系统01-路由分发
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-路由分发的更多相关文章
- ASP.NET的路由系统:路由映射
总的来说,我们可以通过RouteTable的静态属性Routes得到一个基于应用的全局路由表,通过上面的介绍我们知道这是一个类型的RouteCollection的集合对象,我们可以通过调用它的MapP ...
- ASP.NET Web API路由系统:路由系统的几个核心类型
虽然ASP.NET Web API框架采用与ASP.NET MVC框架类似的管道式设计,但是ASP.NET Web API管道的核心部分(定义在程序集System.Web.Http.dll中)已经移除 ...
- 创建自定义路由处理程序(Creating a Custom Route Handler) | 定制路由系统| 高级路由特性 |精通ASP-NET-MVC-5-弗瑞曼
自定义实现 IRouteHandler
- django框架--路由系统
目录 一.路由系统理解 二.路由系统功能划分 三.路由表创建 创建工具 二级路由 路由别名 动态路由及重定向 四.自定义错误页面 五.图示路由系统在框架中的定位 六.路由系统的进阶想法 一.路由系统理 ...
- django 路由系统,数据库操作
一.修改配置 数据库 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME':'dbname', 'USER': ...
- ASP.NET MVC , ASP.NET Web API 的路由系统与 ASP.NET 的路由系统是怎么衔接的?
ASP.NET MVC 的路由实际上是建立在 ASP.NET 的路由系统之上的. MVC 路由注册通常是这样的: RouteTable 是一个全局路由表, 它的 Routes 静态属性是一个 Ro ...
- django中路由系统和视图的对应关系(值的传递)-->主要内容(位置参数、关键字参数、额外参数、include分组[urls的分发]、命名分组、反向解析、APPEND_SLASH)
路由系统也就是 urls.py文件,视图就是 views.py文件 路由系统里面要注意的事项 urlpatterns中的元素按照书写顺序从上往下逐一匹配正则表达式,一旦匹配成功则不再继续. 若要从UR ...
- django路由系统及分发路由的本质
路由系统 当我们启动一个django项目后,想要通过浏览器访问到django项目中的资源 就需要在django中的urls项目中进行路由配置 urlpatterns = [ url(r'^admin/ ...
- django上课笔记1-目录介绍-路由系统-ORM操作
一.Django目录介绍 django-admin startproject mysite # 创建名为mysite的项目 cd mysite # 切换到该目录下 python manage.py s ...
随机推荐
- Python连接SQLServer2000或连接mysql代码示例
1.Python连接SQLServer2000 # 获取连接 import pymssql db = pymssql.connect('127.0.0.1', 'sa', 'ddh123', &quo ...
- Excel-DNA开发包:ExcelDna-0.34.6.zip下载
Excel-DNA可以用VB.Net或C#开发Excel自定义函数.制作.xll格式的加载宏. 点此下载 ExcelDna-0.34.6.zip
- 10X genomics|cell base|in-vivo based|model organisms|SBI|
生命组学-药物基因组学 精准医学的内容有个人全基因组测序,移动可穿戴设备,它可以实时监测,深度学习模型预测疾病,对疾病预测做到有效.安全和可控. 药物基因组学就是研究疾病.化合物和靶点之间的关系,关键 ...
- Python之configparser配置文件的读取
配置文件名 config.ini 文件内容: [linux] ip:10.0.13.26 port:22 username:root password:W2ynE6b58wheeFho [mysql] ...
- 在腾讯云centos7.2上安装配置Node.js记录
应为爱好前端所以打算在腾讯云服务器上安装JavaScript引擎Node.js,下面是安装步骤: 安装准备: 下载node.js的.tar.xz安装包:https://nodejs.org/dist/ ...
- 吴裕雄--天生自然 PYTHON数据分析:钦奈水资源管理分析
df = pd.read_csv("F:\\kaggleDataSet\\chennai-water\\chennai_reservoir_levels.csv") df[&quo ...
- 如何安装及使用honmaple社区程序 · honmaple's blog · 风落花语风落天,花落风雨花落田.
Table of Contents 1. 如何安装及使用 1.1. 安装需要的package 1.2. 配置config 1.3. 注释下面代码 1.4. 初始化数据库 1.5. 创建管理员账户 2. ...
- Mysql(或者sqlite), Mongo中update Column + 1
Mysql(或者sqlite), Mongo中update Column + 1 有类似以下需求,在数据库表里有一个字段,记录了一个count,然后又时候需要在count的基础上加上某个数字,比如1. ...
- React类型检查
类型检查 import PropTypes from 'prop-types' 类名==List List.propTypes = { list: PropTypes.array } // 默认值 L ...
- 带你学习ES5中新增的方法
1. ES5中新增了一些方法,可以很方便的操作数组或者字符串,这些方法主要包括以下几个方面 数组方法 字符串方法 对象方法 2. 数组方法 迭代遍历方法:forEach().map().filter( ...