Django安装及第一个项目

1、安装python

复制代码
C:\Users\leell>py --version
Python 3.10.6

可以看出我的环境python的版本3.10.6,比较新

2、 Python 虚拟环境创建

2.1 官网教程

目前,有两种常用工具可用于创建 Python 虚拟环境:

  • venv 在 Python 3.3 及更高版本中默认可用,并将 pipSetuptools 安装到 Python 3.4 及更高版本。

  • virtualenv 需要单独安装,但支持 Python 2.7+ 和 Python 3.3+,以及 pipSetuptoolswheel 是 默认情况下,始终安装到创建的虚拟环境中(无论 Python 版本)。

windows下创建venv虚拟环境:

这也是我用的虚拟环境

复制代码
py -m venv <DIR>
<DIR>\Scripts\activate

windows下创建virtualenv虚拟环境:

复制代码
virtualenv <DIR>
<DIR>\Scripts\activate

进入虚拟环境:

复制代码
<DIR>\Scripts\activate

2.2 实践操作

创建虚拟环境:

复制代码
py -m venv test12

进入虚拟环境:

复制代码
D:\>cd test12

D:\test12>Scripts\activate

安装Django:

复制代码
(test12) D:\test12>pip install Django
Collecting Django
  Downloading Django-5.0.3-py3-none-any.whl (8.2 MB)
     ---------------------------------------- 8.2/8.2 MB 7.7 MB/s eta 0:00:00
Collecting tzdata
  Downloading tzdata-2024.1-py2.py3-none-any.whl (345 kB)
     ---------------------------------------- 345.4/345.4 kB 7.1 MB/s eta 0:00:00
Collecting sqlparse>=0.3.1
  Downloading sqlparse-0.4.4-py3-none-any.whl (41 kB)
     ---------------------------------------- 41.2/41.2 kB 1.9 MB/s eta 0:00:00
Collecting asgiref<4,>=3.7.0
  Downloading asgiref-3.8.1-py3-none-any.whl (23 kB)
Collecting typing-extensions>=4
  Using cached typing_extensions-4.10.0-py3-none-any.whl (33 kB)
Installing collected packages: tzdata, typing-extensions, sqlparse, asgiref, Django
Successfully installed Django-5.0.3 asgiref-3.8.1 sqlparse-0.4.4 typing-extensions-4.10.0 tzdata-2024.1

[notice] A new release of pip available: 22.2.1 -> 24.0
[notice] To update, run: python.exe -m pip install --upgrade pip

查看Django:

复制代码
(test12) D:\test12>django-admin

Type 'django-admin help <subcommand>' for help on a specific subcommand.

Available subcommands:

[django]
    check
    compilemessages
    createcachetable
    dbshell
    diffsettings
    dumpdata
    flush
    inspectdb
    loaddata
    makemessages
    makemigrations
    migrate
    optimizemigration
    runserver
    sendtestemail
    shell
    showmigrations
    sqlflush
    sqlmigrate
    sqlsequencereset
    squashmigrations
    startapp
    startproject
    test
    testserver
Note that only Django core commands are listed as settings are not properly configured (error: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.).

3、开始第一个Django Demo

生成Diango项目:

复制代码
django-admin startproject HelloWorld

查看文件:

复制代码
(test12) D:\test12>cd HelloWorld

(test12) D:\test12\HelloWorld>tree
卷 软件 的文件夹 PATH 列表
卷序列号为 0005-FA19
D:.
└─HelloWorld
    └─__pycache__

(test12) D:\test12\HelloWorld>

目录说明:

  • HelloWorld: 项目的容器。
  • manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
  • HelloWorld/init.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
  • HelloWorld/asgi.py: 一个 ASGI 兼容的 Web 服务器的入口,以便运行你的项目。
  • HelloWorld/settings.py: 该 Django 项目的设置/配置。
  • HelloWorld/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。
  • HelloWorld/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。
  • pycache:对于一个*.py文件,在执行过程中解释器会先把*.py文件编译为字节码,并缓存在*.pyc文件中

4、启动Diango项目

复制代码
(test12) D:\test12\HelloWorld>py manage.py runserver 0.0.0.0:8000
Watching for file changes with StatReloader
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.

查看效果:

要进行python开发,如果只是作为开发,而没有其他需求,系统可以选择ubantu

参考文章:

安装包 - Python 打包用户指南

Django 创建第一个项目 | 菜鸟教程

相关推荐
万少6 小时前
Vibe Coding不停歇,移动端 TRAE SOLO 让你用手机也能编程啦
前端·javascript·后端
Rust研习社6 小时前
为什么 Rust 没有空指针?
开发语言·后端·rust
landyjzlai6 小时前
蓝迪哥玩转Ai(8)---端侧AI:RK3588 端侧大语言模型(LLM)开发实战指南
人工智能·python
皮皮林5516 小时前
全网最全的 Jenkins + Maven + Git 自动化部署指南!
后端
舒一笑7 小时前
用几十行代码搞定 Chat 接口透明转发:跨环境轻量级网关实战
后端·程序员·架构
铁皮饭盒8 小时前
成为AI全栈 - 第3课:路由 RESTful Elysia 状态码 设计规范
前端·后端·全栈
我叫黑大帅8 小时前
如何通过 Python 实现招聘平台自动投递
后端·python·面试
狼爷8 小时前
短视频播放量(Views)计数系统实现方案:高并发、不丢数的工业级实践
后端·架构
其实防守也摸鱼8 小时前
CTF密码学综合教学指南--第九章
开发语言·网络·python·安全·网络安全·密码学·ctf
砚底藏山河8 小时前
Python量化开发:2026最佳实时股票数据API接口推荐与对比
开发语言·windows·python