实战Django的URL路由分发
2020-10-01 12:40 idea555 阅读(150) 评论(0) 收藏 举报目录篇:Django之前后端交互篇目录 点击跳转
主篇:Django之URL路由系统【交互篇一】点击跳转
目录
- 1.创建Django项目
- 2.创建两个app(并且在两个app目录下创建一个urls.py文件)
- 三.项目url进行路由分发
- 四.APP下的URL创建,URL对应函数,响应的html
- 5.启动Django
- 6.浏览器访问URL结果
多个app的时候我们使用路由分发,因为如果把所有的app写在统一个urls.py里面会导致复杂不说,以后分工就有点麻烦。
如:一个做运维自动化平台的,Monitor(监控)的团队,一个做cmdb的团队,然后2个团队修改同个urls.py完全没必要.,这样后期修改就不会乱了也无需修改对方团队的东西(互不影响)
应用场景:构架你自己的运维平台的话,有资产管理啊,Monitor啊,openstyle..等之类
1.创建Django项目
Django之创建项目【二】:https://blog.csdn.net/Burgess_zheng/article/details/86505526
2.创建两个app(并且在两个app目录下创建一个urls.py文件)
进入项目目录下
创建app命令:
F:\Burgess\Python\pycharm实验脚本\test\project_burgess>python manage.py startapp cmdb
F:\Burgess\Python\pycharm实验脚本\test\project_burgess>python manage.py startapp monitor创建后的项目的app目录图示:
三.项目url进行路由分发
路径:project_burgess/project_burgess/urls.py
from django.contrib import admin from django.urls import path,re_path #Django版本2.0以上 from project_burgess import views from django.conf.urls import url #Django2.0 from django.conf.urls import include urlpatterns = [ path('admin/', admin.site.urls), #路由分发 #cmdb_app re_path('cmdb/',include("cmdb.urls")), #url(r'^cmdb/', include("cmdb.urls")), #monitor_app re_path('monitor/', include("monitor.urls")), # url(r'^monitor/', include("monitor.urls")), ]
四.APP下的URL创建,URL对应函数,响应的html
cmdb
url路径:project_burgess/cmdb/urls.py
__author__ = "Burgess Zheng" #!/usr/bin/env python #-*- coding:utf-8 -*- from django.urls import path,re_path #Django版本2.0以上 from cmdb import views from django.conf.urls import url #Django2.0 urlpatterns = [ re_path('',views.burgess_cmdb), #url(r'',views.burgess_cmdb), ]url对应处理函数路径:project_burgess/cmdb/views.py
from django.shortcuts import render # Create your views here. def burgess_cmdb(request): return render(request,'burgess_cmdb.html')响应用户html:project_burgess/templates/burgess_cmdb.html
<html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <h1>burgess CMDB</h1> </body> </html>monitor
url路径:project_burgess/monitor/urls.py
__author__ = "Burgess Zheng" #!/usr/bin/env python #-*- coding:utf-8 -*- from django.urls import path,re_path #Django版本2.0以上 from monitor import views from django.conf.urls import url #Django2.0 urlpatterns = [ re_path('',views.burgess_monitor), #url(r'',views.burgess_monitor), ]url对应处理函数路径:project_burgess/monitor/views.py
from django.shortcuts import render # Create your views here. def burgess_monitor(request): return render(request,'burgess_monitor.html')响应用户html:project_burgess/templates/burgess_monitor.html
<html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <h1>burgess Monitor</h1> </body> </html>
5.启动Django
手动:python manage.py runserver 127.0.0.1:8000
pycharm:





浙公网安备 33010602011771号