关于django
Django是一个Python的web框架,例如flask,tornado,web.py等都是python web框架
web.py:轻量级的开源的web框架,简单而且功能强大
flask: python编写的轻量级web开发框架
tornado:既是一个web服务器,也是一个web框架
django的 优势:
1.强大的mvt项目开发架构
2.完善的模版视图的支持
3.准确的路由地址映射
4.高效的ORM数据操作
5.完善的后台管理系统
6.优秀的表单处理功能 等等
但是,企业级web开发,web还是王道
python开发效率高 php是轻量级出名
什么是框架? 什么是模块? 有什么区别?
框架:可被应用开发者定制的应用骨架,提供方法属性的同时,提供处理事务的业务逻辑,扩展代码
模块:能够单独命名并独立完成一定功能的程序语句的集合。 为了完成某一件事,或者某些事,
封装的代码,提供了一些封装好的方法和属性。
区别:
模块是 一堆函数的集合
框架是 一堆模块的集合,提供了基本的特定的复杂功能和处理流程的实现
Django的架构模式
mvc软件架构:核心思想是解耦降低各功能模块之间耦合性,易重构代码,最大程度实现代码重用
具有 健壮性,扩展性和维护性 的 特点 高内聚,低耦合
m表示 model 主要用于对数据库层的封装 类,以及跟数据库相关的代码
v 表示view 用于向用户展示结果 页面
c表示controller 是核心,用于处理请求,获取数据,返回结果 接收参数,分发请求
mvt软件架构: django认为mvc传统的软件处理流程有点冗余,进行升级得到了mvt
m 表示model 负责与数据库额交互
v 表示view 核心,负责接收请求、获取数据、返回结果
t 表示template 负责呈现内容到浏览器
django的安装和配置:
pip install django==版本号 (不填默认最新版)
django的hello
django-admin startproject 项目名称
cd 项目名称
python manage.py runserver
settings.py
LANGUAGE_CODE='zh-Hans'
django路由映射
urls.py
url(r"^index$",views.index,name="index")
views.py 视图函数的文件
from django.http import HttpResponse
#视图函数
def index(request):
return HttpResponse("<h1>页面内容</h1>")
django 中,根模块本质不建议编写代码
1.不利于团队开发
2.实现层的分离--分层的概念
在django中创建一个子模块(功能模块)
cd 项目主目录
django-admin startapp 子模块名称
当子模块创建完成后,要求必须执行两项操作(重中之重)
1.在根模块的settings.py配置文件中INSTALLED_APPS=["子模块名称"]
2.创建子路由, urls.py 编写对应路由匹配,之后交给根路由来处理
网友评论