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

相关推荐
circuitsosk3 小时前
NL2SQL在工业级场景下的精度优化:Schema Linking + 动态Few-shot实战
人工智能·python·sql·大模型·nl2sql
kobe_OKOK_8 小时前
DRF接口幂等操作
python·django
SomeB1oody8 小时前
【RustyML入门】6.3. 并行归约
开发语言·后端·机器学习·rust·教程
廿士9 小时前
python脚本使用相关
python
青 春 记 忆9 小时前
零基础入门python19:Flask账本第一步——应用工厂、蓝图和健康检查
python·flask·后端开发
朦胧之9 小时前
Python 后端核心知识
python
Profile排查笔记9 小时前
指纹浏览器哪个好?从 Profile、代理、权限和自动化能力判断是否适合
前端·人工智能·后端·自动化
用户938515635079 小时前
用 AI 结对编程从 0 搭一个"单词后台管理系统":Next.js + Supabase + Drizzle + shadcn/ui 全记录
后端·postgresql·next.js
denggun1234510 小时前
yield
前端·数据库·python
爱学习的小邓同学10 小时前
Golang --- (1)第一个Golang程序
开发语言·后端·golang