进入Web的殿堂与Django的初接触

什么是Web

Web(World Wide Web)即全球广域网,也称为万维网,它是一种基于超文本和HTTP的、全球性的、动态交互的、跨平台的分布式图形信息系统,是建立在Internet上的一种网络服务,为浏览者在Internet上查找和浏览信息提供了图形化的、易于访问的直观界面,其中的文档及超级链接将Internet的信息节点组成一个互为关联的网状结构

Web的特点

  • 图形化的:我们看到的图片、文字、视频、音频、在一个结构下呈现出来
  • Web与平台无关:无论是什么操作系统,都可以通过浏览器预览使用
  • 分布式的:在当下网络发达的今天,我们的所有元素被安排在不同的电脑磁盘中,防止因集中读取一台电脑磁盘而出现瓶颈
  • 动态的:信息是可变的,特别是大型更新速度很快的网站
  • 交互的:我们可以通过网上的信息进行与内容的交互,人与人之间的交流

Web的结构

  • 网站的前端:通过用户肉眼看到的网站的布局、内容,对网站的操作的功能,一切可以让用户可以直接接触与操作的部分
  • 网站的后端:大量的业务逻辑,数据库IO,用户不可见,不可直接接触的部分

用户通过访问前端的功能,前端分为静态功能动态功能
静态功能不会和后端服务器进行交互,仅在前端处理并响应用户
动态功通过与后端的交互,通过前端发送给后端的指令,在后端接到指令并作出相应逻辑处理后响应给前端,前端在收到后端响应后,将结果直接或二次加工呈现给用户

Web结构图

前后端不分离

前后端分离

组成前端的开发语言

名称 描述 举例
超文本语言html 一种用来标记页面布局的语言(准确来说html不算一种语言) <table></table>
css 用来给html添加各种样式的语言 color: red
javascript 用于动态调整html,css,进行前端逻辑处理,与后端交互的语言 var name = 'beck';

Python中的后端服务器框架

名称 描述
Tornado 支持异步,有自己的服务器的web框架,成熟的web框架,初学难度高
Webpy 一个小巧的Web框架,貌似已经停止更新
Flask 一个轻量级框架,生态齐备,使用率高,有一定学习成本
Japronto 2017年出的新框架,性能很强,但生态还不齐备,当前版本还有诸多问题
Django 成熟的PythonWeb框架,生态齐备且功能齐备,学习成本低,易于快速上手

什么是Django

  • Django是一个开源的Web应用框架
  • 由Python编写,它拥有非常齐备的官方文档
  • 提供一站式的解决方案,包括缓存、数据ORM、后台管理、验证、表单处理等多项功能
  • 可以快速搭建高性能的优雅的网站

Django中的MVT

Django中的模块

  • 模型 Model:数据层,处理与数据相关的所有事物
  • 视图 View:视图层,用来处理用户发出的请求
  • 模板 Template:模板层,通过视图函数渲染html模板,得到动态的前端页面
  • 路由 Url:网站的入口,关联到对应的视图函数,访问网址就对应一个函数
  • 表单 Forms:表单,用在浏览器输入数据提交,并对这些数据进行验证
  • 后台Admin:Django自带一个管理后台,对你提交的数据进行管理
  • 配置Settings:Django的设置,配置文件

学习的准备之基础知识

  • 对Python基础知识进行掌握,对Python3的一些特性有所了解
  • 对关系型数据库有一定了解,如Mysql,它的安装和基本使用
  • 对前端语言有一个基础,Html、css和Javascript

Python3的安装

为什么使用python3,因为django2版本不再支持python2,并且2020年官方将不再支持python2的更新

pip

pip是一个python的第三方开源库的下载与安装工具,使用方法

pip install django2==2.1.2

Virtualenv

  • Virtualenv是一个Python的虚拟环境库,通过它可以防止各个项目之间因为Python版本不同或第三方库版本不同引起冲突,每个虚拟环境都是独立的,干净的
  • pip install virtualenv
  • 创建虚拟环境路径:virtualenv -p python3 dev
  • 启动虚拟环境:. env/bin/active
  • 退出虚拟环境:deactive
  • 虚拟环境不是必须的,根据个人情况和习惯使用

Django的基础命令

  • django-admin startproject 项目名->创建一个django项目
  • python manage.py startapp 应用名->项目中创建一个应用
  • python manage.py shell->进入调试代码的调试模式
  • python manage.py makemigrations->数据库创建更改文件
  • python manage.py migrate->同步到数据库进行更新
  • python manage.py flush->清空数据库
  • python manage.py runserver 0.0.0.0:8000->启动开发服务器
  • python manage.py + 回车 可查看更多命令
posted @ 2020-07-27 21:27  cnhkzyy  阅读(377)  评论(0编辑  收藏  举报