Django5的环境安装

news/2024/10/7 8:32:10

Django是基于Python的Web框架,依赖Python环境,所以需要提前安装好Python解释器。

关于Python的安装,请参考https://www.liujiangblog.com中Python教程的相关部分,这里不再赘述。

截至2024年初,Django的最新版本为5.0,发布于2023年12月,预计2025年结束支持。

Django5.0支持Python 3.10、3.11和3.12。

下面为Django版本和Python版本的依赖对照表。

Django版本 Python版本
1.11 2.7, 3.4, 3.5, 3.6, 3.7
2.0 3.4,3.5,3.6,3.7
2.1 3.5,3.6,3.7
2.2 3.5, 3.6, 3.7, 3.8
3.0 3.6, 3.7, 3.8
3.1 3.6, 3.7, 3.8
3.2 3.6、3.7、3.8、3.9、3.10
4.0 3.8, 3.9, 3.10
4.1 3.8、3.9、3.10、3.11
4.2 3.8、3.9、3.10、3.11、3.12
5.0 3.10, 3.11, 3.12

关于版本号的对应是这样理解的:

  • 不向下兼容:比如Django5.0不支持Python3.10以下的版本。

  • 不向上兼容:比如Django5.0不支持Python3.12以上的版本。(支持期内可能会增加兼容)

  • 一个Python版本,可能被多个Django版本支持。

版本建议:

  • 对于初学者,建议直接安装最新版本的Python和Django!

  • 对于已有项目,不要轻易调整Python和Django版本。

Django的版本路线时间图如下所示

未来版本的计划节点:

版本号 预计发布时间 主线维护结束时间 扩展支持结束时间
5.1 2024年8月 2025年4月 2025年12月
5.2 LTS 2025年4月 2025年12月 2028年4月
6.0 2025年12月 2026年8月 2027年4月
6.1 2026年8月 2027年4月 2027年12月

从上表中可以看出Django的版本更新迭代非常快,大版本号两年加一,小版本号半年一升。实际上,对于非重度用户或二次开发使用,Django的版本差别并没有你想象中那么大,完全不必为版本的问题头疼。即使现在,django1.x版本都依然在使用。

一、安装Django

1. 通过pip安装Django

如果你是通过升级的方式安装Django,那么你需要先卸载旧的版本。

Django提供3种发行版本:

  • 你的操作系统提供的发行版本(比如Linux)

  • 官方稳定版本(推荐)

  • 开发测试版本

Django本质上是Python语言的一个库,因此可以通过pip工具安装。这也是最简便、最好的安装方式。不建议通过下载安装包或者编译源码进行安装的方法,除非你的环境无法连接外部网络。

以windows系统中使用pip命令安装为例:

win+r,调出cmd,以管理员身份运行命令:pip install django,自动安装PyPi提供的最新版本。

如果要指定版本,可使用pip install django==5.0.1这种形式。

在Linux操作系统中,也是一样,使用pip工具包安装Django。

2. 验证安装

命令行下运行:

$ python -m django --version

或者进入Python交互式环境(注意一定要进入刚才安装了Django的Python解释器),按下面所示查看安装版本:

>>> import django
>>> django.get_version()
3.1

或者使用pip list命令,查看是否存在Django模块。

3. 配置系统环境

成功安装Django后,以windows为例,在Python解释器目录下的Scripts文件夹中可找到一个django-admin.exe文件,这是Django的核心管理程序,最好将它加入操作系统的环境变量中,这样在以后的调用会比较方便。

如何进入环境变量设置界面,请参考Python教程中的相关部分。如下图所示,在Path变量中添加Scripts目录。

 

回到cmd界面,直接运行django-admin help,如果能看到类似下面的内容表示环境变量设置成功。

D:\test>django-admin help
​
Type 'django-admin help <subcommand>' for help on a specific subcommand.
​
Available subcommands:
​
[django]   check   compilemessages   createcachetable   dbshell
...以下省略

实际上,对Windows环境变量path的编辑,只是为了在命令行下可以无需带路径,直接执行一些程序,而不会出现程序文件无法找到的错误。

二、 创建项目

1. 在cmd或Linux命令行环境下创建Django项目

在windows的cmd环境中(Linux类同),首先进入虚拟环境的script目录,确保Django已经安装,输入下面的命令:

django-admin startproject mysite

这样就会在当前目录下创建一个叫做mysite的Django项目。

D:\test>django-admin startproject mysite
D:\test>dirD:\test 的目录
​
<DIR>          .
<DIR>          ..
<DIR>          mysite

注意:Django的项目名称和应用名称一定要避开一些特殊单词,比如"django"、"python"、"test"、"debug"之类的。

可以看到Django自动帮我们创建了一个mysite文件夹,这是项目的根目录。在mysite根目录中,又有一个mysite目录,这是整个项目的配置文件目录(一定不要和同名的根目录混淆),还有一个manage.py文件,它是整个项目的管理脚本。

D:\test>cd mysite
​
D:\test\mysite>dir
​D:\test\mysite 的目录
​
<DIR>          .
<DIR>          ..              manage.py
<DIR>          mysite
​
​
D:\test\mysite>cd mysite
​
D:\test\mysite\mysite>dir
​D:\test\mysite\mysite 的目录
​
<DIR>          .
<DIR>          ..              __init__.py              settings.py              urls.py              asgi.py              wsgi.py
​

回到项目根目录下,运行python manage.py runserver,Django会以127.0.0.1:8000这个默认配置启动开发服务器。

D:\test\mysite>python manage.py runserver
Performing system checks...
​
System check identified no issues (0 silenced).
​
You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
January 25, 2024 - 20:19:21
Django version 5.0.1, using settings 'Django5_test.settings'
Starting development server at http://localhost:8000/
Quit the server with CTRL-BREAK.

打开你的浏览器,在地址栏输入127.0.0.1:8000,如果看到如下的界面,说明Django一切正常,你可以开始Django之旅了!


2. 在windows下使用Pycharm创建Django工程

事实上,我们一般不使用命令行,而是直接在Pycharm中创建Django项目。

Pycharm是进行Django开发的最佳IDE,请大家自行安装,建议使用最新专业版本。(非专业版的Pycharm不提供Django开发模块,非最新版的Pycharm可能对最新版本的Python或者Django支持不好。比如Pycharm2018对Python3.8的支持就不好,并且这些坑不好找,不好填。)

2018以后的Pycharm版本都支持同时创建虚拟环境和Django项目。

下面以Pycharm 2024.1专业版为例。(可以提前安装中文插件)

首先打开Pycharm,点击文件-->新建项目,选择左边的Django,出现下面的对话框,注意下面的红框提示:

  • 位置处选择你希望的工程目录

  • interpreter type处选择project venv。Python已经内置了venv模块,可以直接安装虚拟环境 。虚拟环境会以.venv的名字,自动在工程目录下生成。你也可以使用conda,这主要用于数据科学研究项目。或者自定义解释器环境,这需要你提前安装virtualenv模块,不再赘述。

  • 在Python版本处,选择你要使用的Python版本。

再点开下方的更多设置

  • 模板语言: 选择使用的模板语言,默认Django就行。

  • 模板文件夹:这是Pycharm安利给我们的功能,用于额外创建一个工程级别的模板文件的保存目录,可以不设置,让它空着,也可以直接默认。template是目录的名字,可换成任何你喜欢的名字。

  • 应用程序名称: 自动帮你创建一个app。可选的功能,先空着吧。

  • 启用Django admin: 开启管理后台admin功能,一般勾上。

没什么问题了,就点击创建吧。

下面就是一段时间的等待,Pycharm会帮助我们自动创建虚拟环境,以及安装最新版本的Django。

安装过程中,如果以前没有下载最新版本的django,会联网下载。如果有,则使用缓存的django。

创建完成之后,进入Pycharm的解释器设置菜单,可以看到当前Django版本是5.0版本。如果你要指定过去的版本,比如2.2、3.1等,那就不能这么操作了,需要在命令行下自己创建虚拟环境并安装django。或者在这里先删除Django,再安装你想要的指定版本。

看下我们当前的状态,注意venv虚拟环境目录。

点击最上面的绿色三角图标,启动默认的开发服务器,在浏览器中访问127.0.0.1:8000,如果看到欢迎界面,说明一切OK!

注意:第一次启动服务器后,Django会默认创建一个db.sqlite3文件,这是SQLite3数据库。

如果没有特别说明,教程将在Pycharm中进行。

需要汉化Pycharm的,可以在settings的plugins中搜索chinese简体中文包,安装即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hjln.cn/news/42833.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

如何管理文件 2024年6月10日

如何管理文件 2024年6月10日一、简介:本文的文件是指人在日常工作、生活、娱乐、交流过程中形成的各种形式的信息记录。信息记录的集合构成了文件。有的文件可以用Microsoft Office 办公软件打开,有的文件可以被MX Player、IINA播放器、完美解码播放器等各种电子设备平台中的…

statistical_c02

1. 点估计1.1 最大似然估计1.1.1 似然函数 1.1.2 最大似然估计 1.1.3 最大似然估计例子1.2 矩估计(Method of Moments, MoM)1.2.1 矩估计思想1.3 估计量的评选标准2. 区间估计2.1 置信区间2.1.1 置信区间引入 2.1.2 置信区间2.2 单个正态总体的均值和方差的置信区间2.2.1 正态…

python爬虫笔记——学习笔记—6

爬虫笔记——学习笔记—6 1.安装scrapy 打开此电脑 ![img](file:///C:/Users/Administrator/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png 在桌面的上栏目输入cmd并打开再命令框中升级python:python -m pip install –upgradepip 安装scrapy : pip install scrapy 安…

PyQT5之QSS基础/子控件选择器

from PyQt5.QtWidgets import * import sysclass BasicQCSS(QWidget):def __init__(self):super().__init__()self.setWindowTitle("QSS样式/子控件选择器")btn1 = QPushButton(self)btn1.setText("按钮1")btn1.setProperty("name", btn1)btn2 =…

面试官:你讲下接口防重放如何处理?

前言 我们的API接口都是提供给第三方服务/客户端调用,所有请求地址以及请求参数都是暴露给用户的。 我们每次请求一个HTTP请求,用户都可以通过F12,或者抓包工具fd看到请求的URL链接,然后copy出来。这样是非常不安全的,有人可能会恶意的刷我们的接口,那这时该怎么办呢?防重…

01-Excel初阶操作-学习笔记

超链接专题 应用场景:一份excel表格中包含多个子表,如下图所示。让我们在目录所在的子表创建超链接,使得能够快速跳转到各个子表查看数据内容,并为每一个含有数据的表格添加返回到目录所在子表的超链接手工创建超链接 具体操作:我们以制作跳转至“全部数据”所在子表为例 …

CSP历年复赛题-P5017 [NOIP2018 普及组] 摆渡车

原题链接:https://www.luogu.com.cn/problem/P5017 题意解读:先将问题进行抽象、建模。 设一条数轴,从左到右,每个点对应一个时刻,每个时刻可能有多个人到达,然后有若干个发车时刻,每两个发车时刻间隔必须>=m,每个人的等待时长就是到最近一个发车时刻的时间累加,计…

etcd watch 实现原理

介绍 在 etcd 中,watch 是一个非常重要的特性,它可以让客户端监控 etcd 中的 key 或者一组 key,当 key 发生变化时,etcd 会通知客户端。本文将介绍 etcd watch 的实现原理。 etcdctl watch /test # 当 /test 的值发生变化时,会输出如下信息 PUT /test a PUT /test b DELET…