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 创建第一个项目 | 菜鸟教程

相关推荐
JavaGuide2 小时前
7 道 RAG 基础概念知识点/面试题总结
前端·后端
桦说编程2 小时前
从 ForkJoinPool 的 Compensate 看并发框架的线程补偿思想
java·后端·源码阅读
孟健3 小时前
Karpathy 用 200 行纯 Python 从零实现 GPT:代码逐行解析
python
格砸3 小时前
从入门到辞职|从ChatGPT到OpenClaw,跟上智能时代的进化
前端·人工智能·后端
蝎子莱莱爱打怪3 小时前
GitLab CI/CD + Docker Registry + K8s 部署完整实战指南
后端·docker·kubernetes
哈密瓜的眉毛美4 小时前
零基础学Java|第三篇:DOS 命令、转义字符、注释与代码规范
后端
用户60572374873084 小时前
AI 编码助手的规范驱动开发 - OpenSpec 初探
前端·后端·程序员
哈密瓜的眉毛美4 小时前
零基础学Java|第二篇:Java 核心机制与第一个程序:从 JVM 到 Hello World
后端
码路飞4 小时前
写了个 AI 聊天页面,被 5 种流式格式折腾了一整天 😭
javascript·python