进入Web的殿堂与Django的初接触
1|0什么是Web
Web(World Wide Web)即全球广域网,也称为万维网,它是一种基于超文本和HTTP的、全球性的、动态交互的、跨平台的分布式图形信息系统,是建立在Internet上的一种网络服务,为浏览者在Internet上查找和浏览信息提供了图形化的、易于访问的直观界面,其中的文档及超级链接将Internet的信息节点组成一个互为关联的网状结构
2|0Web的特点
- 图形化的:我们看到的图片、文字、视频、音频、在一个结构下呈现出来
- Web与平台无关:无论是什么操作系统,都可以通过浏览器预览使用
- 分布式的:在当下网络发达的今天,我们的所有元素被安排在不同的电脑磁盘中,防止因集中读取一台电脑磁盘而出现瓶颈
- 动态的:信息是可变的,特别是大型更新速度很快的网站
- 交互的:我们可以通过网上的信息进行与内容的交互,人与人之间的交流
3|0Web的结构
- 网站的前端:通过用户肉眼看到的网站的布局、内容,对网站的操作的功能,一切可以让用户可以直接接触与操作的部分
- 网站的后端:大量的业务逻辑,数据库IO,用户不可见,不可直接接触的部分
用户通过访问前端的功能,前端分为
静态功能
和动态功能
静态功能不会和后端服务器进行交互,仅在前端处理并响应用户
动态功通过与后端的交互,通过前端发送给后端的指令,在后端接到指令并作出相应逻辑处理后响应给前端,前端在收到后端响应后,将结果直接或二次加工呈现给用户
4|0Web结构图
4|1前后端不分离
4|2前后端分离
5|0组成前端的开发语言
名称 | 描述 | 举例 |
---|---|---|
超文本语言html | 一种用来标记页面布局的语言(准确来说html不算一种语言) | <table></table> |
css | 用来给html添加各种样式的语言 | color: red |
javascript | 用于动态调整html,css,进行前端逻辑处理,与后端交互的语言 | var name = 'beck'; |
6|0Python中的后端服务器框架
名称 | 描述 |
---|---|
Tornado | 支持异步,有自己的服务器的web框架,成熟的web框架,初学难度高 |
Webpy | 一个小巧的Web框架,貌似已经停止更新 |
Flask | 一个轻量级框架,生态齐备,使用率高,有一定学习成本 |
Japronto | 2017年出的新框架,性能很强,但生态还不齐备,当前版本还有诸多问题 |
Django | 成熟的PythonWeb框架,生态齐备且功能齐备,学习成本低,易于快速上手 |
7|0什么是Django
- Django是一个开源的Web应用框架
- 由Python编写,它拥有非常齐备的官方文档
- 提供一站式的解决方案,包括缓存、数据ORM、后台管理、验证、表单处理等多项功能
- 可以快速搭建高性能的优雅的网站
8|0Django中的MVT
9|0Django中的模块
- 模型 Model:数据层,处理与数据相关的所有事物
- 视图 View:视图层,用来处理用户发出的请求
- 模板 Template:模板层,通过视图函数渲染html模板,得到动态的前端页面
- 路由 Url:网站的入口,关联到对应的视图函数,访问网址就对应一个函数
- 表单 Forms:表单,用在浏览器输入数据提交,并对这些数据进行验证
- 后台Admin:Django自带一个管理后台,对你提交的数据进行管理
- 配置Settings:Django的设置,配置文件
10|0学习的准备之基础知识
- 对Python基础知识进行掌握,对Python3的一些特性有所了解
- 对关系型数据库有一定了解,如Mysql,它的安装和基本使用
- 对前端语言有一个基础,Html、css和Javascript
11|0Python3的安装
为什么使用python3,因为django2版本不再支持python2,并且2020年官方将不再支持python2的更新
12|0pip
pip是一个python的第三方开源库的下载与安装工具,使用方法
13|0Virtualenv
- Virtualenv是一个Python的虚拟环境库,通过它可以防止各个项目之间因为Python版本不同或第三方库版本不同引起冲突,每个虚拟环境都是独立的,干净的
pip install virtualenv
- 创建虚拟环境路径:
virtualenv -p python3 dev
- 启动虚拟环境:
. env/bin/active
- 退出虚拟环境:
deactive
- 虚拟环境不是必须的,根据个人情况和习惯使用
14|0Django的基础命令
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 + 回车
可查看更多命令
__EOF__

本文作者:cnhkzyy
本文链接:https://www.cnblogs.com/my_captain/p/13227929.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/my_captain/p/13227929.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
分类:
django
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2018-07-27 如何去除pycharm中代码下的波浪线
2018-07-27 web自动化常用定位和方法总结