简单了解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中的文档测试模块
Apr 28 Python
Python的socket模块源码中的一些实现要点分析
Jun 06 Python
python简单线程和协程学习心得(分享)
Jun 14 Python
学习python中matplotlib绘图设置坐标轴刻度、文本
Feb 07 Python
python学生信息管理系统
Mar 13 Python
Python实现爬虫抓取与读写、追加到excel文件操作示例
Jun 27 Python
Python列表(List)知识点总结
Feb 18 Python
python实现海螺图片的方法示例
May 12 Python
django admin.py 外键,反向查询的实例
Jul 26 Python
Django数据库操作之save与update的使用
Apr 01 Python
python源码剖析之PyObject详解
May 18 Python
Python list列表删除元素的4种方法
Nov 01 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
php下检测字符串是否是utf8编码的代码
2008/06/28 PHP
解析php中static,const与define的使用区别
2013/06/18 PHP
浅析ThinkPHP中的pathinfo模式和URL重写
2014/01/06 PHP
详解关于php的xdebug配置(编辑器vscode)
2019/01/29 PHP
IE6 弹出Iframe层中的文本框“经常”无法获得输入焦点
2009/12/27 Javascript
jquery中获得$.ajax()事件返回的值并添加事件的方法
2010/04/15 Javascript
解读JavaScript中 For, While与递归的用法
2013/05/07 Javascript
JavaScript用Number方法实现string转int
2014/05/13 Javascript
js处理表格对table进行修饰
2014/05/26 Javascript
jQuery学习笔记之jQuery.extend(),jQuery.fn.extend()分析
2014/06/09 Javascript
jQuery函数map()和each()介绍及异同点分析
2014/11/08 Javascript
JS实现的自定义右键菜单实例二则
2015/09/01 Javascript
基于jQuery插件实现点击小图显示大图效果
2016/05/11 Javascript
AngularJS表单和输入验证实例
2016/11/02 Javascript
使用纯JS代码判断字符串中有多少汉字的实现方法(超简单实用)
2016/11/12 Javascript
详解nodejs express下使用redis管理session
2017/04/24 NodeJs
javaScript实现滚动条事件详解
2020/03/24 Javascript
Webpack path与publicPath的区别详解
2018/05/03 Javascript
详解Angular路由之路由守卫
2018/05/10 Javascript
Vue.js点击切换按钮改变内容的实例讲解
2018/08/22 Javascript
小程序实现列表删除功能
2018/10/30 Javascript
详解项目升级到vue-cli3的正确姿势
2019/01/28 Javascript
vue element-ui实现动态面包屑导航
2019/12/23 Javascript
[40:48]DOTA2上海特级锦标赛D组败者赛 Liquid VS COL第二局
2016/02/28 DOTA
Python中time模块与datetime模块在使用中的不同之处
2015/11/24 Python
PyCharm使用教程之搭建Python开发环境
2016/06/07 Python
python中pika模块问题的深入探究
2018/10/13 Python
Python实现将通信达.day文件读取为DataFrame
2018/12/22 Python
对python3中的RE(正则表达式)-详细总结
2019/07/23 Python
opencv3/C++实现视频背景去除建模(BSM)
2019/12/11 Python
python操作微信自动发消息的实现(微信聊天机器人)
2020/07/14 Python
Django ModelForm组件原理及用法详解
2020/10/12 Python
教师推荐信范文
2013/11/24 职场文书
求职简历的自我评价
2014/01/31 职场文书
2016年暑假家长对孩子评语
2015/12/01 职场文书
星际争霸 Light vs Action 一场把教主看到鬼畜的比赛
2022/04/01 星际争霸