Django基础配置

一.前言

前面我们说完了前端基础,现在我们开始讲后端框架了,我们今天说的是django,当然今天主要还是和大家了解一下框架和django的基础配置

二.web框架

2.1 web框架初始

在我们学习web框架的时候,我们首先得了解到web框架的本质,我们先和大家来回忆一下socket和http协议,这里前面都和大家讲过,这里给出链接地址,大家去看看

python之网络编程(socket)_python socket-CSDN博客文章浏览阅读2.7k次,点赞16次,收藏43次。今天我们就讲完这么多了,本来想和大家讲一个文件的上传和下载的,但是发现讲不完根本讲不完,大家可以自己练习试试。_python sockethttps://blog.csdn.net/weixin_74178589/article/details/141186919?spm=1001.2014.3001.5501HTTP协议-CSDN博客文章浏览阅读1.1k次,点赞27次,收藏12次。这个概念在前面讲socket的时候和大家提到过,但是到这里我还是会和大家提一提web网页,我们都不陌生,相信大家都有使用web浏览上网的。那么,学习制作网页前,我们需要清晰哪些概念,准备哪些工具呢?接下来,我们要先了解下。在日常生活中,我们都会上网,或聊天、或阅读、或购物等,浏览很多的网站,而网站就是由网页组成。在互联网中,软件系统体系分两大结构:CS模式C/S 就是Client/Server 的缩写,是客户端和服务器架构。早期的软件系统多数是C/S结构的设计标准。https://blog.csdn.net/weixin_74178589/article/details/142315167?spm=1001.2014.3001.5501

这里重要的也就是这个socket,我们当时写的http其实就是一个最简单的web框架,所有的python的框架都是基于这个代码所组成的,而在http协议的时候,我们当时需要加上http协议的标识,浏览器才能正常拿到数据,我们返回拿到的数据还都是按照http的格式返回的,如果用原生的socket写后端会发现很麻烦,而我们web框架就是干处理数据等事情

我们常见的框架有django、flask、tornado、sanic、fastapi..

所以说我们web应用程序都是由三部分构成的

用户网络通信的socket ,web框架,业务开发 ,其中业务开发是站在框架的基础上的

以djano为例,socket部分由wsgiref模块、uwsgi、daphne实现

以flask为例,socket部分由werkzurg、uwsgi、...实现

2.2 各框架的区别

内部集成功能的多少

  • django,内部提供了很多组件。 【相对大】

  • flask、tornado、sanic、fastapi... 本身自己功能很少+第三方组件。【相对小】

同步框架 vs 异步非阻塞

  • 异步非阻塞:tornado、sanic、fastapi、django

  • 同步:django、flask、bottle、webpy..

但是其中django的异步支持的不是很好

三.快速上手django

3.1 安装

pip install django==3.2

因为我们说的版本是3.2的,所以我们安装的是3.2的django

3.2 命令行

cd 指定目录

django-admin startproject 项目名

这样我们就成功创建了django项目,这是目录的功能

mysite

├── manage.py [项目的管理工具]

└── mysite

├── init.py

├── settings.py 【配置文件,只有一部分。程序启动时,先读取django内部配置,再读settings.py

├── urls.py 【主路由,在里面编写 /xxx/xxx/xxx ---> index 】

├── asgi.py 【异步】

└── wsgi.py 【同步,主】

编写urls.py的代码

运行

cd 项目

python manage.py runserver

python manage.py runserver 127.0.0.1:8000

python manage.py runserver 127.0.0.1:9000

这样我们也就启动了

app概念

cd 项目

python manage.py startapp 名字

mysite

├── manage.py

├── mysite

│ ├── init.py

│ ├── asgi.py

│ ├── settings.py

│ ├── urls.py

│ └── wsgi.py

└── web

├── init.py

├── admin.py

├── apps.py

├── migrations

│ └── init.py

├── models.py 【ORM,基于models可以对数据库进行简便的操作】

├── tests.py

└── views.py 【视图函数】

我们现在先了解这么多,以后遇到了会和大家具体说,app的作用其实就是让功能分开

3.2 pycham创建

django-admin startproject 项目名称

cd 项目目录

python manage.py startapp

python manage.py runserver

但是这样创建确实很方便,但是这样创建的是最新版本的,一会教大家创建指定版本的

四.创建指定版本

4.1 创建项目

先创建一个虚拟环境的项目,然后安装diango指定版本的,然后安装django

pip install django==3.2

然后终端输入

django-admin syartproject study01 .

注意一定要加上.这样就和原来django对应上了,项目下面一个文件夹

再点击这里

这样就配置好就可以直接运行了

4.2 创建app

这里推荐创建app先创建一下apps文件夹和你要创建app的名字的文件夹,再把app创建进去,这样就不会在根目录看着比较难受了

再把这个改成apps.web,就ok了

4.3 纯净版django

我们把设置里的这些屏蔽了,也就是一个纯净版的了

五.总结

今天说了很多配置,其实都是简单东西,这里给大家总结一下

重要的三个命令

django-admin startproject 项目名称 //创建项目 如果要创建指定版本那就在后面加个.

python manage.py startapp app名称 //创建app

python manage.py runserver //运行项目

总的来说都是配置的东西,不记得来看一下就行了

六.补充

下一期将会讲django的基础知识点,主要是说路由和视图

相关推荐
奔跑吧邓邓子1 分钟前
【Python爬虫(44)】分布式爬虫:筑牢安全防线,守护数据之旅
开发语言·分布式·爬虫·python·安全
程序员 小濠26 分钟前
接口测试基础 --- 什么是接口测试及其测试流程?
自动化测试·python·测试工具·职场和发展·appium·接口测试·压力测试
程序媛徐师姐34 分钟前
Python基于Django的酒店推荐系统【附源码】
python·django·酒店·酒店推荐·python django·酒店推荐系统·python酒店推荐系统
大脑经常闹风暴@小猿1 小时前
1.1 go环境搭建及基本使用
开发语言·后端·golang
尚学教辅学习资料1 小时前
基于SpringBoot的美食分享平台+LW示例参考
spring boot·后端·美食
~kiss~1 小时前
python的thrift2pyi学习
windows·python·学习
奔跑吧邓邓子1 小时前
【Python爬虫(45)】Python爬虫新境界:分布式与大数据框架的融合之旅
开发语言·分布式·爬虫·python·大数据框架
Luke Ewin1 小时前
根据音频中的不同讲述人声音进行分离音频 | 基于ai的说话人声音分离项目
人工智能·python·音视频·语音识别·声纹识别·asr·3d-speaker
大米洗澡1 小时前
数字签名技术基础
python·学习·程序人生·面试·职场和发展
神一样的老师2 小时前
ChromeDriver版本不匹配问题的解决
python