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的基础知识点,主要是说路由和视图

相关推荐
波波0073 分钟前
每日一题:请解释 .NET 中的协变和逆变?
后端·.net
ByNotD0g11 分钟前
深入解析 Go 官方更新:实验性 goroutineleak Profile 原理与机制
开发语言·后端·golang
Q一件事11 分钟前
结构方程相关
python·算法·机器学习
IT_陈寒13 分钟前
SpringBoot自动配置揭秘:90%开发者不知道的核心原理
前端·人工智能·后端
星轨zb14 分钟前
非遗AI对话系统架构升级实战
java·人工智能·redis·后端·系统架构
iPadiPhone15 分钟前
Spring Boot 核心注解全维度解析与面试复盘
java·spring boot·后端·spring·面试
夫唯不争,故无尤也16 分钟前
curl与Invoke-RestMethod核心区别
后端·fastapi·powershell·curl
彭于晏Yan20 分钟前
Spring Cloud Stream使用
spring boot·后端·spring cloud
SunnyDays101123 分钟前
使用 Python 轻松操控 Excel 网格线:隐藏、显示与自定义颜色
开发语言·python·excel
常利兵24 分钟前
Kotlin 延迟初始化:lateinit与by lazy的华山论剑
spring boot·后端·状态模式