Django框架安装
3039 字
15 分钟
Django框架安装
- 1纯手撸Web框架
- 2Python框架初识
- 3Django框架初识
- 4Django框架安装本文
- 5Django框架入门之小白必会三板斧
- 6Django便捷函数shortcuts
- 7Django框架入门之静态文件
- 8Django的静态文件
- 9Django框架入门之request对象
- 10Django框架入门之ORM操作
- 11Django框架之生命周期流程图
- 12Django框架之路由层
- 13Django框架之视图层
- 14Django框架之模板层
- 15Django框架之模型层
- 16图书管理系统
- 17Ajax基础操作
- 18Ajax进阶操作
- 19JS确认插件补充
- 20Django框架之序列化组件serializers
- 21Django框架之批量插入数据
- 22Django框架补充之分页器推导
- 23Django框架之Form组件
- 24Django框架Form组件之常用字段及插件
- 25Django框架Form组件之渲染HTML代码
- 26Django框架Form组件之渲染错误信息
- 27Django框架Form组件之钩子函数(Hook)
- 28Django框架Form组件之源码
- 29Django框架Form组件之模型表单ModelForm
- 30Django表单API详解
- 31Django框架之Cookie和Session
- 32Django框架之会话session补充
- 33Django框架之CBV添加装饰器的三种方式
- 34Django框架之中间件引入
- 35Django框架之中间件思想
- 36Django框架之csrf跨站请求
- 37Django框架之auth模块
- 38Django框架之settings源码
- 39Django框架之settings配置
- 40Django框架之settings核心配置项
- 41RBAC权限系统
- 42前端基础之URL编码
【零】前言
- 一定要注意自己的电脑上的Python解释器环境
- 如果环境混乱的话可能会导致后续一系列的问题
- 具体的环境如何配置可以参考我以前的博客
【1】Python解释器和Pycharm的安装
【2】Python相关补充
【一】Django框架下载
【1】pip安装
- 使用 pip 命令安装指定版本的第三方包
pip3 install django==3.2.12- 如果之前下载了其他版本不用管
- Python解释器会将旧版本卸载,安装指定的版本,即自动替换!!!
【2】安装注意事项
- 计算机名称不要出现中文
- python解释器版本不同可能会出现启动报错
- 项目中所有的文件名称不要出现中文
- 多个项目文件尽量不要嵌套,做到一项一夹
【3】可能会存在的报错

- 启动如果报错,根据提示找到修改widgets.py文件第152行源码,删除最后的逗号即可
【二】如何检验是否安装成功
【1】通过控制台输出
pip install django==3.2.12
【2】Python文件
- 在你的Python解释器安装目录下的 Scripts 文件夹下 会出现一个 django-admin.exe的文件

【3】命令行终端
- 终端输入会出现如下,原理就是调用了Scripts下的django-admin
- 如果确定自己安装成功了,但是就是在终端没效果,那一定是你的环境有问题!
- 当前是否能正常打印Python解释器版本
- 核验自己安装的Django到底是安装在了哪个Python解释器上
django-admin
【三】命令行基本使用
【1】创建Django项目
(1)语法
django-admin startproject 项目名(2)示例
- 在指定文件下启动终端
django-admin startproject mysite- 终端无显示内容

- 查看当前文件夹下内容,会发现多了一个文件夹,文件夹下有很多对应的文件

【2】启动Django项目
(1)语法
python3 manage.py runserver [IP:PORT]- IP和PORT可选,默认是本地的 127.0.0.1<8000>8000>
(2)示例
- 进入到创建好的文件目录下
- 注意这个文件目录是你当前目录下有 manage.py 文件才行
python manage.py runserver
- 访问底下提示的链接地址

【3】创建APP
(1)语法
python3 manage.py startapp 应用名- 应用名一般为英文
(2)示例
- 同上,在当前 manage.py 所在终端目录下
python3 manage.py startapp app01
# 上面命令不生效,试试 python3 能不能进入到python解释器,如果不能,换下面的试试python manage.py startapp app01
- 查看当前文件夹下会发现多了一个 app01 文件夹

【4】注册APP
- 创建APP后,如果想使用相关的功能,必须将创建的APP注册到配置文件中
- 即在settings中加入下述内容
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', # 找到对应的配置内容中,加入当前新创建的APP的名字 'app01']【四】PyCharm基本使用
【1】创建Django项目
(1)创建项目
- File ---> New Project

(2)创建成功
- 创建完成后的目录结构

【2】启动Django项目
(1)配置启动
- 点击右上角的启动按钮启动项目

(2)启动成功
- 启动成功如下

(报错)启动Django项目支持
- 启动报错,请启动Django项目支持

- 点击Fix

- 点击OK,再次启动Django项目
(配置)Django配置
- 编辑配置文件

- 配置文件说明(部分)

【3】创建APP
(1)方式一:命令行
- 打开终端

- 执行命令
python .\manage.py startapp app01
(2)方式二:借助工具
- 找到 Tools ---> Run manage.py Task

- 进入到终端

【4】注册APP
- 创建APP后,如果想使用相关的功能,必须将创建的APP注册到配置文件中
- 即在settings中加入下述内容
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', # 找到对应的配置内容中,加入当前新创建的APP的名字 'app01']【补充】Django框架中应用的概念
- 在Django框架中,应用程序(Application)是组织和管理项目代码的基本单元。
- 它不仅包含了与特定业务逻辑相关的模型、视图、模板以及URL配置,还可能包括 forms、signals、中间件、管理后台等组件,实现了项目的模块化设计。
【1】介绍
- Django框架就像是一个高度模块化的操作系统,为开发者提供了基础设施和服务,如数据库连接、认证授权、请求处理等。
【2】比喻
(1)大学与学院
- Django框架相当于是一所大学,应用相当于是大学里面的各个学院
- 大学相当于是个空壳子
- 负责提供环境
- 学院才是一个个真正具备特定功能的集合
- 大学相当于是个空壳子
(2)操作系统与服务
- 每个应用就像是操作系统中的一个进程或服务,负责处理特定领域的任务和数据操作。
- 用户应用(user)关注用户的注册、登录、权限管理等功能;
- 订单应用(order)主要处理商品购买、订单状态跟踪、支付确认等相关事务;
- 商品应用(goods)专注于商品信息管理、分类展示、搜索推荐等功能;
- 后台管理应用(backend)则通常包含对系统设置、数据统计、权限控制等方面的集中管理和维护。
【2】示例
- 使用django写一个淘宝,淘宝里面有很多功能模块
- 我们应该先创建一个空的django项目然后根据功能的不同创建不同的应用
- django项目
| 应用名 | 业务 |
|---|---|
| user | 用户相关业务:管理用户账户信息(账号、密码、角色、权限)、用户行为记录、消息通知等 |
| order | 订单相关业务:负责订单生成、订单详情展示、订单状态变更、支付接口调用、物流追踪及订单评价等 |
| goods | 产品相关业务:包括商品分类管理、商品详情展示、库存管理、商品评论、浏览记录等 |
| promotion | 促销相关业务:针对促销活动的规划、优惠券发放、满减规则设置、折扣计算等; |
| category | 商品类别业务:用于商品类别树的构建、导航菜单设置、新品上架、热门推荐等; |
| logistics | 物流相关业务:对接物流公司API以获取物流信息、快递单号追踪等功能; |
| statistics | 数据分析相关业务:收集并分析平台各项运营数据,如访问量、转化率、客单价等,为决策提供支持; |
【补充】Django项目文件介绍
【1】Django空项目
├── Django项目名 # 整体项目名 ├── db.sqlite3 # Django默认的db数据库,sqlite3 ├── manage.py # Django的服务控制文件,所有的Django命令都是基于manage.py 来执行的 └── mysite # 项目名 ├── __init__.py # 包初始化文件 ├── __pycache__ # 缓存编译后的模块代码,加快加载速度 │ ├── __init__.cpython-310.pyc # 编译后的文件 │ ├── settings.cpython-310.pyc # 编译后的文件 │ ├── urls.cpython-310.pyc # 编译后的文件 │ └── wsgi.cpython-310.pyc # 编译后的文件 ├── asgi.py # 支持异步请求处理的应用程序接口 ├── settings.py # 配置文件 ├── urls.py # 实现URL路由规则 └── wsgi.py # Django项目的入口点,将HTTP请求传递给WSGI容器,以启动Django服务器。- Django项目名
- 这是您为该项目创建时指定的名称,比如 “mysite”。
- 每个Django项目都有一个唯一的名称,并且在整个项目目录下作为顶级目录存在。
- db.sqlite3
- 这是Django默认使用的SQLite数据库文件。
- SQLite是一个轻量级的关系型数据库管理系统,无需服务器运行,所有数据存储在一个文件中。
- 在这个项目中,SQLite被用作开发阶段的数据存储和本地测试环境的默认选项。
- manage.py
- 这是Django的核心服务控制脚本,包含了各种用于管理和维护项目、应用程序以及运行Django服务器的内置命令。
- 通过manage.py,您可以执行如创建数据库、迁移模型、创建超级用户、运行开发服务器等操作。
- mysite
- init.py
- 这是一个空的Python模块文件,它告诉Python这是一个包含其他模块或包的目录。
- 尽管对于Django项目来说,这通常不是必需的,但在一些情况下可能会用到。
- pycache
- Python会在此目录下缓存编译后的模块代码,以便加快后续加载速度。
- 这些目录通常不应该直接修改或删除,而是由Python自动处理。
- init.cpython-310.pyc: 编译后的初始化模块。
- settings.cpython-310.pyc, urls.cpython-310.pyc, wsgi.cpython-310.pyc: 分别对应于settings.py、urls.py和wsgi.py这三个文件的编译版本。
- asgi.py
- 在Django 3.0及更高版本中,此文件允许将项目配置为ASGI应用(Asynchronous Server Gateway Interface),即支持异步请求处理的应用程序接口,适用于生产环境中部署长连接或WebSocket服务。
- settings.py
- 项目级别的设置文件,定义了诸如数据库连接、认证方式、中间件列表、静态文件托管、邮件配置等各种全局设置,以及其他项目自定义配置信息。
- urls.py
- 应用程序级别的URL配置文件,定义了项目内各个视图函数与URL模式之间的映射关系,实现了URL路由规则。
- wsgi.py
- Web Server Gateway Interface (WSGI) 实现文件,是Django项目的入口点,将HTTP请求传递给WSGI容器(如uWSGI, Gunicorn, uWSGI等)以启动Django服务器。
- 在早期版本中,Django项目可能只有一个根WSGI应用;而在现代Django项目中,可能涉及多个WSGI应用组合。
- init.py
【2】APP项目
└── app01 # APP 名字 ├── __init__.py # 包初始化文件 ├── admin.py # 注册管理后台界面中的模型 ├── apps.py # 定义当前app相关的信息 ├── migrations # 模型相关的数据迁移历史记录文件 │ └── __init__.py # 包初始化文件 ├── models.py # 数据库模型 ├── tests.py # 用于编写单元测试 └── views.py # 主要逻辑处理模块,负责接收 HTTP 请求并返回响应- app1 是一个名为 “app01” 的Django应用程序目录,它遵循Django应用组织的标准结构,用于组织可重用的功能模块。
- init.py
- 此文件是空的,但它表明当前目录 “app01” 是一个Python包,里面包含其他子模块或文件。
- admin.py
- 如果您的 “app01” 应用需要注册管理后台界面(Admin Site)中的模型,则应在该文件中编写自定义的ModelAdmin类,以便管理和编辑数据库表中的记录。
- 如果没有特定需求,可以保持为空或者注释掉。
- apps.py
- 此文件定义了 “app01” 应用本身,包括应用的元数据(如名称、路径等)、是否启用该应用,以及与其他应用的关系(如有依赖)。
- migrations
- 存储与 “app01” 模型相关的数据迁移历史记录文件(.py)和应用状态文件(.pyc)。
- 当您更改了 “models.py” 中的模型结构时,Django会根据这些变更生成新的迁移文件,用于更新数据库结构以保持一致。
- models.py
- 该文件定义了 “app01” 中的数据库模型(也称为数据结构或对象)。
- 每个模型继承自 django.db.models.Model 并定义字段及其属性,例如字段类型、验证规则、外键关联等。它是实现业务逻辑的基础,并最终决定了数据库表的设计。
- tests.py
- 用于编写单元测试(Unit Tests)的模块,确保 “app01” 应用中各个功能模块正确无误地工作。
- 通过unittest.TestCase类或使用更高级别的测试框架如pytest进行测试用例编写。
- views.py
- 视图(Views)是 “app01” 中的主要逻辑处理模块,负责接收 HTTP 请求并返回响应。
- 它们是Django URL 路由系统与用户交互的核心部分,定义了如何解析请求、调用相应的业务逻辑以及构建最终返回的响应数据。
- 每个视图通常与 URLconf 中的一个 URL 路由关联起来。
- init.py
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!
相关文章智能推荐
1
C 语言开发环境的安装与配置
编程语言在 Windows、Linux 与 macOS 上安装 C 工具链,配置编辑器,并编译运行第一个 C 程序。
2
C 语言发展史
编程语言了解 C 语言从 BCPL、B 语言到现代标准 C 的发展历程、核心特点与应用领域。
3
C 语言初识:程序运行机制与基本结构
编程语言认识 C 程序从源代码到运行的完整流程,以及基础语法和程序的基本结构。
4
C 语言基础:注释、关键字、变量与数据类型
编程语言学习 C 语言的注释、关键字、标识符、常量、变量和基本数据类型等基础知识。
5
C 语言数据类型
编程语言理解 C 语言的数据类型体系,包括基本类型、整数类型、浮点类型和逻辑类型。
随机文章随机推荐














