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

相关推荐
2301_776508723 分钟前
Python日志记录(Logging)最佳实践
jvm·数据库·python
2401_8796938717 分钟前
用Python批量处理Excel和CSV文件
jvm·数据库·python
I'm Jie20 分钟前
Swagger UI 本地化部署,解决 FastAPI Swagger UI 依赖外部 CDN 加载失败问题
python·ui·fastapi·swagger·swagger ui
2401_8463416539 分钟前
Python Lambda(匿名函数):简洁之道
jvm·数据库·python
2401_8796938742 分钟前
进阶技巧与底层原理
jvm·数据库·python
阿_旭44 分钟前
基于YOLO26深度学习的【桃子成熟度检测与分割系统】【python源码+Pyqt5界面+数据集+训练代码】图像分割、人工智能
人工智能·python·深度学习·桃子成熟度检测
蹦哒1 小时前
Kotlin 与 Java 语法差异
java·python·kotlin
SmartBrain1 小时前
Spring Boot的高性能技术栈的工程实践
spring boot·后端·架构
jerryinwuhan1 小时前
python数据挖掘基础
python·数据挖掘·numpy
echome8881 小时前
Python 异步编程实战:asyncio 核心概念与最佳实践
开发语言·网络·python