Django多app路由分发(纯后端)
目录
- 1、环境搭建
- 2、生成django项目
- 3、创建app
- 4、在每个app下创建templates文件夹,用于创建html页面
- 5、每个app创建urls.py用于构建每个app的分路由
- 6、项目总路由urls.py
- 7、每个app的前端页面
- 8、每个app的view.py
1、环境搭建
Python3.6.7
pip install django==2.2.6
2、生成django项目
django-admin startproject yourproject
3、创建app
python manage.py startapp app1 python manage.py startapp app2
需要将app注册到项目的settings.py中
4、在每个app下创建templates文件夹,用于创建html页面
5、每个app创建urls.py用于构建每个app的分路由
重点关注name声明
from django.urls import path from . import views urlpatterns=[ path('search/',views.search,name='diary_search'), path('home/',views.home), ]
6、项目总路由urls.py
重点关注include写法、namespace声明
from django.contrib import admin from django.urls import path,include urlpatterns = [ path('admin/', admin.site.urls), path('skynet/', include(('skynet.urls','skynet'),namespace='skyent')), path('diary/', include(('diary.urls','diary'),namespace='diary')), ]
7、每个app的前端页面
重点关注form action
<form action="{% url 'skynet:skynet_search'%}" method="post"> {% csrf_token %} <input type="text" name="keywords"> <button type="submit">提交</button> </form>
8、每个app的view.py
from django.shortcuts import render #Create your views here. def home(request): return render(request,'index.html') def search(request): keywords=request.POST.get('keywords') print(keywords) return render(request,'index.html')
总结:经过上述操作可实现django项目多app路由分发,这样做的好处是只需要修改后端路由,前端的路由会随之变化
到此这篇关于Django多app路由分发(纯后端)的文章就介绍到这了,更多相关Django 多app路由分发内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
相关推荐
-
浅谈django channels 路由误导
与django路由有区别 他们都有根路由,但是不一样. django的根路由: urlpatterns = [ path('login/',include('login.urls')), path('',views.home), path('helloapp/', include('helloapp.urls')), path('admin/', admin.site.urls), ] channels的根路由: 只能形如这种样子,URLRouter里面是一个列表,列表当中是具体路由条目. ap
-
django drf框架自带的路由及最简化的视图
django-drf框架自带的路由以及最简化的视图,具体内容如下所示: 路由 一.导入模块 from rest_framework.routers import SimpleRouter 二.初始化路由对象 router = SimpleRouter() 三.创建路由 router = SimpleRouter() # 注册各种接口路由 router.register('cars', views.CarModelViewSet, base_name='car') #car为链接的开头,views
-
详解django中url路由配置及渲染方式
今天我们学习如何配置url.如何传参.如何命名.以及渲染的方式,内容大致有以下几个方面. 创建视图函数并访问 创建app django中url规则 捕获参数 路径转换器 正则表达式 额外参数 渲染方式 创建视图并访问 项目中自带的Python文件中,并没有带有视图,因此我们自己创建一个,通常,我们把视图命名views.py. 然后在views.py中,导入头文件 from django.http import HttpResponse 然后我们在views.py中,写一些Python函数,用来访
-
Django 路由控制的实现代码
一.URL路由基础 URL是web服务的路口,用户通过浏览器发送过来的任何请求都会被发送到一个指定的URL地址里,然后被响应. 在django项目中编写路由就是向外暴露我们接收哪些URL的请求,除此之外任何的URL都不会被处理,URL路由就是web服务对外暴露的API 二.Django处理请求 确定要使用的 URLconf 模块,通常是settings中 ROOT_URLCONF 设置的值,如果传入的 HttpRequest 对象具有 urlconf 属性(中间件设置),则使用其值代替setti
-
Django之路由层
Django之路由层 URL配置(URLconf)就像Django所支撑网站的目录.它的本指是URL与要为该URL调用的视图函数之间的映射表,你就是以这种方式告诉Django,对于客户端发来的某个URL调用哪一段逻辑代码对应执行. 一.简单的路由配置 from django.urls import path,re_path from app01 import views urlpatterns = [ re_path(r'^articles/2003/$', views.special_case
-
Django基础知识 URL路由系统详解
MVC和MTV框架 MVC Web服务器开发领域里著名的MVC模式,所谓MVC就是把Web应用分为模型(M),控制器(C)和视图(V)三层,他们之间以一种插件式的.松耦合的方式连接在一起,模型负责业务对象与数据库的映射(ORM),视图负责与用户的交互(页面),控制器接受用户的输入调用模型和视图完成用户的请求,其示意图如下所示: MTV Django的MTV模式本质上和MVC是一样的,也是为了各组件间保持松耦合关系,只是定义上有些许不同,Django的MTV分别是值: M 代表模型(Model):
-
django2笔记之路由path语法的实现
9月23,Django发布了2.0a1版本,这是一个 feature freeze 版本,如果没有什么意外的话,2.0正式版不会再增加新的功能了.按照以往的规律,预计正式版将在12月发布. 备注:Django 2.0 于12月2日已经正式发布. (链接) 2.0无疑是一个里程碑版本,移除了对 Python2.7 的支持,最少需要 3.4 以上,建议使用3.5以上的版本. What's new in Django2.0 文档中一共列出了三个新的特性: 更简单的URL路由语法 (Simplified
-
Django零基础入门之路由path和re_path详解
目录 urls.py文件中的path和re_path 1.path的基本规则: 2.默认支持的转换器有: 3.re_path正则匹配: Django中实战使用path和re_path 1.urls.py文件: 2.views.py视图函数文件: 3.效果: 假设现在有个需求: 需要通过URL进行参数传递,我们该怎么做呢? 其中有个方法就是本文要讲的内容--path和进阶版的re_path. urls.py文件中的path和re_path 1.path的基本规则: path('test
-
Django多app路由分发(纯后端)
目录 1.环境搭建 2.生成django项目 3.创建app 4.在每个app下创建templates文件夹,用于创建html页面 5.每个app创建urls.py用于构建每个app的分路由 6.项目总路由urls.py 7.每个app的前端页面 8.每个app的view.py 1.环境搭建 Python3.6.7 pip install django==2.2.6 2.生成django项目 django-admin startproject yourproject 3.创建app python
-
Django框架之路由用法
简介 路由简单的来说就是根据用户请求的 URL 链接来判断对应的处理程序,并返回处理结果,也就是 URL 与 Django 的视图建立映射关系. Django 路由在 urls.py 配置,urls.py 中的每一条配置对应相应的处理方法. Django 不同版本 urls.py 配置有点不一样: 1.Django1.1.x 版本 url() 方法:普通路径和正则路径均可使用,需要自己手动添加正则首位限制符号. from django.conf.urls import url # 用 url 需
-
django+vue项目搭建实现前后端通信
目录 django 环境搭建 前端项目搭建 前端项目结构 曲线救国打通vue和django vue适配django django适配vue django 环境搭建 1.创建django骨架项目 django-admin startproject yiyan_webauto 2.创建应用 python manage.py startapp myapp 3.试着启动项目,验证环境OK python3 manage.py runserver 4.基础配置 admin.py 把数据库的具体表注册到后台来
-
python框架django中结合vue进行前后端分离
目录 一:创建django项目 二:安装vue 三:设置vue项目 四:vue项目写完后,打包vue项目,然后修改django配置,将vue集成到django中 五:修改django的主目录的urls文件 六:启动django服务,访问localhost:8000 则可以出现vue的首页 七:有时候并不能直接访问出首页,原因是路径不对 八:vue打包之后经常会出现fontawesome图标库不能使用的情况 一:创建django项目 django-admin startproject mysite
-
django配置app中的静态文件步骤
配置静态文件的两种方式: 1 配置单独app下的静态文件,比如某个app下的单独的图片. 2 配置整个project下的静态文件,适用于那些和单独app关联不大的文件,比如jquery bootstrap 等等 配置步骤: 首先,我们需要确认在settings.py文件中的INSTALLED_APPS变量中存在 django.contrib.staticfiles INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth',
-
Django修改app名称和数据表迁移方案实现
项目一开始的设计很重要,django中app的名称建议用小写 我的博客由两个app组成,Blog和JiaBlog,总觉得不美观,想改成小写的oblog和blog,那么最关键的地方在于和orm数据表的映射 把JiaBlog.articles改成blog.articles是终极目标,这里不推荐用django的migrate 写一个sql批量生成mysql改表名的语句 SELECT CONCAT( 'ALTER TABLE ', table_name, ' RENAME TO b', substrin
-
Django实现自定义路由转换器
自定义路径转换器 有时候上面的内置的url转换器并不能满足我们的需求,因此django给我们提供了一个接口可以让我们自己定义自己的url转换器 django内置的路径转换器源码解析 在我们自定义路由转换器之前,我们先查看一下django内置的那些路由转换器怎么写的,源码路径from django.urls import converters class IntConverter: regex = '[0-9]+' def to_python(self, value): return int(va
-
简单了解Django应用app及分布式路由
前言 应用在Django的项目中是一个独立的业务模块,可以包含自己的路由,视图,模板,模型. 一 创建应用程序 创建步骤 用manage.py中的子命令startapp创建应用文件夹 在settings.py的INSTALLED_APPS列表中配置安装此应用 创建应用的子命令 python3 manage.py startapp应用名称(必须是标识符命令规则) 如:python3 manage.py startapp音乐 Django的应用的结构组成 migrations文件夹 保存数据迁移的中
-
Python Django简单实现session登录注销过程详解
开发工具:pycharm 简单实现session的登录注销功能 Django配置好路由分发功能 默认session在Django里面的超时时间是两周 使用request.session.set_expiry(60)设置超时时间,以秒为单位 在Django配置文件里配置session链接 https://www.jb51.net/article/166988.htm urlpatterns = [ path('admin/', admin.site.urls), path('app01/', in
随机推荐
- jQuery实现的页面遮罩层功能示例【测试可用】
- 正则表达式验证身份证号码和邮箱、判断checked选中状态
- JSP之表单提交get和post的区别详解及实例
- iOS实现封装一个获取通讯录的工具类详解
- IOS图片设置毛玻璃效果
- window.event.srcElement 得到事件源对象
- Javascript变量的作用域和作用域链详解
- Yii2框架RESTful API 格式化响应,授权认证和速率限制三部分详解
- php中ltrim()、rtrim()与trim()删除字符空格实例
- 如何从数据库中随机取出10条记录的方法
- Java实现多个文档合并输出到一个文档
- 在Docker容器中部署静态网页的方法教程
- javascript 判断整数方法分享
- node.js中的console.time方法使用说明
- php SQL之where语句生成器
- JQuery 1.4 中的Ajax问题
- Javascript 类、命名空间、代码组织代码
- java static块和构造函数的实例详解
- Android 实现自定义圆形进度条的实例代码
- Android使用SmsManager实现短信发送功能