一、Python Web 之 Django 的世界

1. Django 是什么

Django 是一个框架,用于开发网站,应用的编程语言的是 Python,在 Django 中提供了开发罕用的模板,让程序员次要精力放在业务局部。

Djano 长处:

  1. 治理后盾,能够进行简略配置,即可实现一个内容治理平台;
  2. ORM,对象关系映射,不便数据库操作;
  3. 前后端拆散的模板零碎;

更多内容,必须要学习之后能力深刻理解。
Django 因为是支流的 Python Web 框架,所以反对 MVC 模式,对于 MVC 初学阶段很容易就陷入概念中,这里橡皮擦做一个简略的阐明。

MVC 是三个单词的缩写,别离是(Model -View - Controller),该模式是十分成熟的 Web 利用程序设计模式。

  • M:负责从数据库获取数据;
  • V:负责向用户推送数据;
  • C:在 M 与 V 之间进行传递数据的控制器。

1.1 Django MVT 模式

MVT 是 Djongo 中自带的设计模式,它与 MVC 存在局部不同,你能够简略的了解为 Django 自带了 HTML 模板文件,并且反对模板语言(模板语言前面的博客会波及,包含占位符,分支,循环等常见操作),Django 并没有失去的 Controller,只是它本人实现了,不须要开发者过多的参加。

1.2 其它 Python Web 框架

基于 Python 语言的 Web 框架挺多的,常见的有 Webpy、Flask、Bottle、Pyramid、Tornado。滚雪球第三轮次要学习的是 Djando,框架是进步代码编写效率的利器,从任意一个学习开始都能够,抉择 Django 只因为改框架在国内热度比拟高一些,肯定注意,从框架上并无任何优劣之分。

2. Web 开发前置常识

前端常识
前端常识包含 HTML,CSS,Javascript ,倡议心愿学习残缺 Web 开发的同学,这部分常识肯定要补充残缺,对你非常无益,如果前期有机会,橡皮擦会独自整顿一套 Web 前端的系列专栏。

HTTP 协定与 TCP/IP 协定
Web 开发是遵循 HTTP 协定实现的,故本局部内容也属于必备常识,网络协议 TCP/IP 在初学阶段能够后置。

Linux 服务器常识
目前国内支流的服务器都是 Linux 零碎,尽管在 Windows 上运行 Python 齐全没有问题,然而眼光放长去看,倡议把握 Linux 服务器相干常识。

数据库系统
作为一个 Python 研发人员,本局部常识是不能省略的,尤其是 MySQL 数据库,除此之外,纯熟的把握 SQL 语言,也是重中之重。

缓存零碎
优先把握 Redis

数据结构和设计模式
程序员的外围竞争力,初学阶段能够后置,包含算法。

操作系统原理
大学的一门课程,置信很多同学曾经都忘记了,这里只进行揭示,如果心愿本人的编程之路,走的更远,倡议补充操作系统原理相干常识。

3. Web 开发之 Python 局部

本专栏属于滚雪球学 Python 的扩大局部,所以 Python 相干的前置常识曾经在滚雪球中进行学习。

  1. 运算符;
  2. 数据类型,整数,字符串,列表,元组,字典,汇合;
  3. 重点类型,字符串,列表以及其对象办法;
  4. 元组与字典相干办法;
  5. 分支与循环语句;
  6. 模块与函数;
  7. 类,属性,办法;
  8. 正则表达式;

4. 这些根底,你还有印象吗?

  1. 数学运算符中有一个函数 divmod,晓得怎么应用吗?
  2. 字典是有程序的吗,collections.OrderedDict 是做什么的?
  3. 字典的默认值如何设置?
  4. 双端队列 collections.deque 学习过吗?
  5. 应用 os 模块能够导入模块吗?
  6. Python 寻找变量的程序是 LEGB 吗?
  7. 类中 __ 下划线示意什么?_ 下划线示意什么?
  8. 深复制与浅复制;
  9. execevalrepr 三个内置函数是做什么的?
  10. picklejsonshutil 模块的应用办法?

5. Django 装置与运行

装置 Djando 特地简略,应用命令行装置即可。

pip install django

装置胜利呈现的内容为:

Successfully installed asgiref-3.3.1 django-3.1.7 sqlparse-0.4.1

装置结束应用下述代码测试一下:

import djangoprint(django.get_version())

在测试环境变量是否齐全无误,在命令窗口运行下述命令:

django-admin help

如果所有都与上图统一,能够持续应用下述命令,创立一个 Django 我的项目。

django-admin startproject my_website

运行之后,在对应文件夹生成如下格局的文件构造。

my_website 根目录中蕴含另一个 my_website目录,该目录整个我的项目的配置文件目录,还有 manage.py 文件,我的项目的治理脚本。

  • my_website

    • my_website
    • __init__.py
    • asgi.py: ASGI 服务器部署信息
    • setting.py:我的项目配置信息
    • urls.py:网站路由设置信息
    • wagi.py:部署信息
    • manage.py

命令行中应用 cd 进入到 my_website 目录,再运行下述命令:

python manage.py runserver

关上浏览器拜访:http://127.0.0.1:8000/,失去下图所示内容,示意Django 曾经开启。

在运行的时候,还能够指定端口,例如下述命令:

python manage.py runserver 8080

应用 Ctrl+C 进行服务。