简单了解Django应用app及分布式路由


Posted in Python onJuly 24, 2019

前言

应用在Django的项目中是一个独立的业务模块,可以包含自己的路由,视图,模板,模型.

一 创建应用程序

创建步骤

用manage.py中的子命令startapp创建应用文件夹

在settings.py的INSTALLED_APPS列表中配置安装此应用

创建应用的子命令

python3 manage.py startapp应用名称(必须是标识符命令规则)

如:python3 manage.py startapp音乐

Django的应用的结构组成

migrations文件夹 保存数据迁移的中间文件
__inti__.py 应用子包的初始化文件
admin.py 应用的后台管理配置文件
apps.py 应用的属性配置文件
models.py 与数据库相关的模型映射类文件
tests.py 应用的单元测试文件
views.py 定义视图处理函数的文件

在settings.py中配置应用,让此应用能和整个项目融为一体

# file : settings.py 
INSTALLED_APPS = [
  ... ...,
  '自定义应用名称'
]

如:

INSTALLED_APPS = [
  # ....
  'user', # 用户信息模块
  'music', # 音乐模块
]

二 应用的分布式路由

在Django中,主文件夹可以不处理用户具体请求的,主文件夹的作用是做项目的初始化以及请求的分发(分布式请求处理)。具体的请求可以由应用来进行处理的

简单了解Django应用app及分布式路由 

django.conf.urls里的包含函数

作用:用于分布将当前路由转到各个模块的urlpatterns进行分布式处理

函数格式:包含('应用程序名字.URL模块名')

参数说明:模块App命字/url模块名.py文件件里必须有urlpatterns列表

使用包括函数让某个正则匹配后关联分支到某个app示例如下:

# file : <项目名>/urls.py
from django.conf.urls import include

urlpatterns = [
  url(r'^admin/', admin.site.urls),
  url(r'^music/', include('music.urls')),
]

##################

# file : music/urls.py
from django.conf.urls import url
from . import views

urlpatterns = [
  url(r'^page1', views.page1),
  url(r'^page2', views.page2),
  url(r'^page3', views.page3),
  # ...
]

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python随机生成彩票号码的方法
Mar 05 Python
基于Python socket的端口扫描程序实例代码
Feb 09 Python
python numpy 显示图像阵列的实例
Jul 02 Python
python模糊图片过滤的方法
Dec 14 Python
Python实现的旋转数组功能算法示例
Feb 23 Python
pandas读取CSV文件时查看修改各列的数据类型格式
Jul 07 Python
python实现微信小程序用户登录、模板推送
Aug 28 Python
python datetime中strptime用法详解
Aug 29 Python
Python新手学习标准库模块命名
May 29 Python
Python如何读写CSV文件
Aug 13 Python
PyTorch 如何检查模型梯度是否可导
Jun 05 Python
Python探索生命起源 matplotlib细胞自动机动画演示
Apr 21 Python
django的ORM操作 删除和编辑实现详解
Jul 24 #Python
Django如何简单快速实现PUT、DELETE方法
Jul 24 #Python
django一对多模型以及如何在前端实现详解
Jul 24 #Python
详解Python是如何实现issubclass的
Jul 24 #Python
Django中在xadmin中集成DjangoUeditor过程详解
Jul 24 #Python
Django 权限认证(根据不同的用户,设置不同的显示和访问权限)
Jul 24 #Python
Django 创建/删除用户的示例代码
Jul 24 #Python
You might like
什么是MVC,好东西啊
2007/05/03 PHP
PHP读取数据库并按照中文名称进行排序实现代码
2013/01/29 PHP
让CodeIgniter数据库缓存自动过期的处理的方法
2014/06/12 PHP
PHP正则表达式过滤html标签属性(DEMO)
2016/05/04 PHP
php+jQuery递归调用POST循环请求示例
2016/10/14 PHP
PHP内置加密函数详解
2016/11/20 PHP
php处理静态页面:页面设置缓存时间实例
2017/06/22 PHP
PHP join()函数用法与实例讲解
2019/03/11 PHP
把html页面的部分内容保存成新的html文件的jquery代码
2009/11/12 Javascript
javascript来定义类的规范小结
2010/11/19 Javascript
非常强大的 jQuery.AsyncBox 弹出对话框插件
2011/08/29 Javascript
使用原生javascript创建通用表单验证——更锋利的使用dom对象
2011/09/13 Javascript
顶部缓冲下拉菜单导航特效的JS代码
2013/08/27 Javascript
js实现全国省份城市级联下拉菜单效果代码
2015/09/07 Javascript
js如何判断输入字符串长度
2015/12/16 Javascript
Vue.js实战之组件的进阶
2017/04/04 Javascript
JQuery和html+css实现带小圆点和左右按钮的轮播图实例
2017/07/22 jQuery
bootstrap Table服务端处理分页(后台是.net)
2017/10/19 Javascript
javascript异步编程的六种方式总结
2019/05/17 Javascript
express + jwt + postMan验证实现持久化登录
2019/06/05 Javascript
如何从头实现一个node.js的koa框架
2019/06/17 Javascript
vue elementUI使用tabs与导航栏联动
2019/06/21 Javascript
ionic3双击返回退出应用的方法
2019/09/17 Javascript
ant-design-vue按需加载的坑的解决
2020/05/14 Javascript
一篇文章带你使用Typescript封装一个Vue组件(简单易懂)
2020/06/05 Javascript
[19:54]夜魇凡尔赛茶话会 第一期02:看图识人
2021/03/11 DOTA
Python引用类型和值类型的区别与使用解析
2017/10/17 Python
python读取中文txt文本的方法
2018/04/12 Python
Ubuntu下Python2与Python3的共存问题
2018/10/31 Python
在Pycharm中将pyinstaller加入External Tools的方法
2019/01/16 Python
在python里从协程返回一个值的示例
2019/02/19 Python
python使用SQLAlchemy操作MySQL
2020/01/02 Python
canvas进阶之贝塞尔公式推导与物体跟随复杂曲线的轨迹运动
2018/01/10 HTML / CSS
Book Depository美国:全球领先的专业网上书店之一
2019/08/14 全球购物
.NET初级开发工程师面试题
2014/04/18 面试题
2014党员四风对照检查材料思想汇报
2014/09/17 职场文书