关于django:django基础到高手知识笔记总结50页笔记共10大模块第一期md

41次阅读

共计 3241 个字符,预计需要花费 9 分钟才能阅读完成。

django 根底到高手常识笔记总结,50 页笔记,共 10 大模块(第一期).md

残缺笔记在这:

https://zhuanlan.zhihu.com/p/…

Django 根底到高手残缺笔记

残缺笔记目录:

第一期笔记内容

Python Web 框架要点

1. Web 利用程序处理流程

2. Web 程序框架的意义

  • 用于搭建 Web 应用程序
  • 免去不同 Web 利用雷同代码局部的反复编写,只需关怀 Web 利用外围的业务逻辑实现

3. Web 应用程序的实质

  • 接管并解析 HTTP 申请,获取具体的申请信息
  • 解决本次 HTTP 申请,即实现本次申请的业务逻辑解决
  • 结构并返回处理结果 —-HTTP 响应

4. Web 框架学习办法

  • 如何搭建工程程序

    • 工程的组建
    • 工程的配置
    • 路由定义
    • 视图函数定义
  • 如何获取申请数据(操作 request 对象)
  • 如何结构响应数据(结构 response 对象)
  • 框架提供的其余性能组件的应用

    • 数据库
    • 模板
    • admin

Django 流程

重点

  • MVT 流程: 把握 M,V,T 的每个模块的性能, 理解 MVT 的流程
  • 创 建 Django 我的项目和利用

    • django-admin startproject name
    • python manager.py startapp name
  • 视 图和 ULR

    • 视图的申请和响应
    • URL 的匹配门路

Django 介绍

1. 简介

Django,** 发
音为 [`dʒaeŋɡəʊ]**,是用 python 语言写的开源 web 开发框架,并遵循 MVC 设计。劳伦斯出版团体为了开发以新闻内容为主的网站,而开发进去了这个框架,于 2005 年 7 月在 BSD 许可证下公布。这个名称来源于比利时的爵士音乐家 DjangoReinhardt,他是一个吉普赛人,次要以演奏吉它为主,还演奏过小提琴等。
** 由
于 Django 在近年来的迅速倒退,利用越来越宽泛,被驰名 IT 开发杂志 SDTimes 评比为 2013SDTimes100,位列 ”API、库和框架 ” 分类第 6 位,被认为是该畛域的佼佼者。**

Django 的 ** 主
要目标是简便、疾速的开发数据库驱动的网站。** 它强调代码复用,多个组件能够很不便的以 ” 插件 ” 模式服务于整个框架,Django 有许多功能强大的第三方插件,你甚至能够很不便的开发出本人的工具包。这使得 Django 具备很强的可扩展性。它还强调疾速开发和 DRY(DoNotRepeatYourself)准则。

2. 特点

1)重量级框架

比照 Flask 框架,Django 原生提供了泛滥的性能组件,让开发更简便疾速。

  • 提供我的项目工程治理的自动化脚本工具
  • 数据库 ORM 反对(对象关系映射,英语:Object Relational Mapping)
  • 模板
  • 表单
  • Admin 治理站点
  • 文件治理
  • 认证权限
  • session 机制
  • 缓存

2)MVT 模式

有一种程序设计模式叫 MVC,其核心思想是 分 工、解耦,让不同的代码块之间升高耦合,加强代码的可扩展性和可移植性,实现向后兼容

MVC 的全拼为 Model-View-Controller
,最早由 TrygveReenskaug 在 1978 年提出,是施乐帕罗奥多钻研核心 (Xerox
PARC) 在 20 世纪 80 年代为程序语言 Smalltalk 创造的一种软件设计模式,是为了将传统的输出(input)、解决(processing)、输入(output)工作使用到图形化用户交互模型中而设计的。随着规范输入输出设施的呈现,开发人员只须要将精力集中在业务逻辑的剖析与实现上。起初被举荐为 Oracle 旗下 Sun 公司 Java
EE 平台的设计模式,并且受到越来越多的应用 ColdFusion 和 PHP 的开发者的欢送。当初尽管不再应用原来的分工形式,然而这种分工的思维被沿用下来,广泛应用于软件工程中,是一种典型并且利用宽泛的软件架构模式。起初,MVC 的思维被利用在了Web 开发方面,被称为Web
MVC 框架。

MVC 模式阐明

  • M 全拼为 Model,次要封装对数据库层的拜访,对数据库中的数据进行增、删、改、查操作。
  • V 全拼为 View,用于封装后果,生成页面展现的 html 内容。
  • C 全拼为 Controller,用于接管申请,解决业务逻辑,与 Model 和 View 交互,返回后果。
Django 的 MVT

  • M 全拼为 Model,与 MVC 中的 M 性能雷同,负责和数据库交互,进行数据处理。
  • V 全拼为 View,与 MVC 中的 C 性能雷同,接管申请,进行业务解决,返回应答。
  • T 全拼为 Template,与 MVC 中的 V 性能雷同,负责封装结构要返回的 html。

注:差别就在于黑线黑箭头标识进去的局部

3. Django 学习材料

  • 官方网站
  • Github 源码
  • Django Book 教程
  • Tange With Django 教程

为什么要搭建虚拟环境?

  • 在开发过程中, 当须要应用 python 的某些工具包 / 框架时须要联网装置

    • 比方联网装置 Django 框架 django 的 1.11.11 版本


sudo pip install django
  • 提 示 :应用如上命令, 会将 Django 装置到/usr/local/lib/python3.8/dist-packages 门路下
  • 问 题:如果在一台电脑上, 想开发多个不同的我的项目, 须要用到同一个包的不同版本, 如果应用下面的命令, 在同一个目录下装置或者更新, 新版本会笼罩以前的版本, 其它的我的项目就无奈运行了.
  • 解 决计划 : 虚拟环境

    • 作 用 : 虚拟环境 能够搭建独立的python 运行环境, 使得单个我的项目的运行环境与其它我的项目互不影响.
    • 所有的 虚拟环境 都位于 /home/ 下的暗藏目录 .virtualenvs

如何搭建虚拟环境?

  • 装置虚拟环境的命令 :


sudo pip install virtualenv
sudo pip install virtualenvwrapper

装置完虚拟环境后,如果提醒找不到 mkvirtualenv 命令,须配置环境变量:

# 1、创立目录用来寄存虚拟环境
mkdir 
$HOME/.virtualenvs

# 2、关上~/.bashrc 文件,并增加如下:export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

# 3、运行
source ~/.bashrc

  • 创立虚拟环境的命令 :

    • 提醒:如果不指定 python 版本,默认装置的是 python2 的虚拟环境
    • 在 python2 中,创立虚拟环境

      mkvirtualenv 虚拟环境名称
      

      例:
      mkvirtualenv py_django

    • 在 python3 中,创立虚拟环境

      mkvirtualenv -p python3 虚拟环境名称
      

      例:
      mkvirtualenv -p python3 py3_django

  • 提醒 :

    • 创立虚拟环境须要联网
    • 创立胜利后, 会主动工作在这个虚拟环境上
    • 工作在虚拟环境上, 提示符最后面会呈现 “ 虚拟环境名称 ”

如何应用虚拟环境?

  • 查看虚拟环境的命令 :


workon

  • 应用虚拟环境的命令 :


workon 虚拟环境名称

例:应用 py3_django 的虚拟环境
workon py3_django

  • 退出虚拟环境的命令 :


deactivate

  • 删除虚拟环境的命令 :


rmvirtualenv 虚拟环境名称

例:删除虚拟环境 py3_django

先退出:deactivate
再删除:rmvirtualenv py3_django

如何在虚拟环境中装置工具包?

文档

  • 提醒 : 工具包装置的地位 :

    • python2 版本下:

      • ~/.virtualenvs/py_flask/lib/python2.7/site-packages/
    • python3 版本下:

      • ~/.virtualenvs/py3_flask/lib/python3.5/site-packages
  • python3 版本下装置 django-1.11.11 的包 :


pip install 包名称

例 : 装置 django 的包
pip install django== 版本

  • 查看虚拟环境中装置的包 :


pip list

本期结束语

学习是一件十分有意思的事件,世上再没有比成长更让人身心愉快的事件了。

大家能够跟着练习

让咱们期待下一期吧~

残缺笔记自取

残缺笔记在这:

https://zhuanlan.zhihu.com/p/…

正文完
 0