Django初学

2018-09-26  本文已影响0人  影子1997

关于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 编写对应路由匹配,之后交给根路由来处理
上一篇下一篇

猜你喜欢

热点阅读