Django_学习_01

Django 项目快速创建及目录说明

1.先创建虚拟环境 (是创建一个相对隔离的环境,后面安装的第三方包都在虚拟环境中--可以理解成一个容器)

先创建一个项目根目录,创建后进入到这个目录创建对应的虚拟目录,例如已经创建了project_django1

a.创建虚拟环境
b.激活虚拟环境
c.安装虚拟环境下的其它的包
python 复制代码
cd project_django1
pip install virturlenv
virtualenv .venv  --python==python3.10   #.venv  用.表示这个是隐藏文件,venv一般可以和项目同名
cd .venv/Script                          #进入active所在目录
activate.bat                             #激活虚拟环境
(.venv)                              

2.安装django

python 复制代码
(.venv) E:\project_django1> pip install django==3.2

3.创建django项目

a.创建项目

python 复制代码
d:\>               #切换到d:盘

# xxx 为项目名称 且创建的项目目标目录和虚拟环境目录可以不在同一目录
d:\>django-admin startproject xxx  


#执行django-admin startproject xxx后D盘生成了xxx 的项目目录

d:\xxx>dir

2023/11/16  22:14    <DIR>          .
2023/11/16  22:14    <DIR>          ..
2023/11/16  22:14               681 manage.py      #项目的管理工具
2023/11/16  22:14    <DIR>          xxx

# 项目xxx

(.venv) d:\xxx>cd xxx

(.venv) d:\xxx\xxx>dir 
 驱动器 D 中的卷是 软件 
2023/11/16  22:14    <DIR>          ..
2023/11/16  22:14               399 asgi.py  # 异步
2023/11/16  22:14             3,353 settings.py   配置文件
2023/11/16  22:14               766 urls.py  #主路由,url 和函数的对应关系
2023/11/16  22:14               399 wsgi.py   #同步  主要使用这个
2023/11/16  22:14                 0 __init__.py  
               5 个文件          4,917 字节
               2 个目录 163,125,735,424 可用字节

# settings.py  #配置文件,只有一部分,程序启动会先度django默认配置文件,再才读这个settings.py
# urls.py  # 主路由,在里面编写url和函数的对应关系,例如 /xxx/xxx/      login

b.运行项目

python 复制代码
(.venv)d:\xxx\xxx>cd ..
(.venv)d:\xxx>dir

2023/11/16  22:14    <DIR>          .
2023/11/16  22:14    <DIR>          ..
2023/11/16  22:14               681 manage.py      #项目的管理工具
2023/11/16  22:14    <DIR>          xxx

(.venv)d:\xxx>python3 manage.py runserver     #后面不带参数默认是127.0.0.1:8000

# 也可以自定义端口
(.venv)d:\xxx>python3 manage.py runserver  127.0.0.1:9000

4.创建项目下对应的APP

python 复制代码
# 在manage.py 这个目录下执行如下命令就创建了一个web  的app
(.venv)d:\xxx>python3 manage.py startapp web


# 再次查看下d:\xxx\目录
(.venv)d:\xxx>dir

2023/11/16  22:14    <DIR>          .
2023/11/16  22:14    <DIR>          ..
2023/11/16  22:14               681 manage.py      #项目的管理工具
2023/11/16  22:14    <DIR>          xxx
2023/11/16  22:15    <DIR>          web


# 再进一步进到刚才创建的web app目录下看下

(.venv)d:\xxx>cd web
(.venv)d:\xxx\web>dir

2023/11/15  21:00                66 admin.py  # django提供的admin模块,一般不用
2023/11/15  21:00               144 apps.py   # app的基本配置,不用
2023/11/15  21:00    <DIR>          migrations # 对数据和表修改自动生成的文件
2023/11/15  21:00                60 models.py
2023/11/15  21:00                63 tests.py  #单元测试的
2023/11/15  21:00                66 views.py  # 这里写功能函数(url对应的函数)
2023/11/15  21:00                 0 __init__.py  # 导入模块用的文件,python自带的

5.完整的连贯的操作

pip install virturlenv

virtualenv .venv --python==python3.10

cd .venv/Script

activate.bat

pip install django==3.2

django-admin startproject xxx

manage.py startapp web xxx/ #可以指定路径,不写默认是本目录下

python3 manage.py runserver 127.0.0.1:9000

6.关于虚拟环境说明

在做测试时,可以把虚拟环境单独放一个目录,然后通过这个虚拟环境创建不同目录的项目,例如在可以E:\盘创建虚拟环境,但是项目可以都放在D:\盘

7.其它

  1. 使用pip包导出

(1)pip freezen > requirements.txt

该方法导出的的requirements.txt包含安装包所在路径,常用于一些大型项目的环境保存,一般大型项目会加载和运行多个环境,这个时候每个环境对应的位置也需要告知。

pip freezen > requirements.txt

1

(2)pip list --format=freeze >requirement.txt

该方法导出的requirements.txt不包含安装包所在路径,与常见的requirements.txt非常类似。

以上两种方法,导出的都是该环境里面所有安装的python包,但是有些包并不是该项目中所必备的依赖,有时候导出的一些包并不是项目运行所必要的。

pip list --format=freeze >requirement.txt

1

(3)使用pip和requirements.txt安装包

使用以下命令安装依赖包:

pip install -r requirements.txt

相关推荐
Q_Q5110082858 小时前
python+django/flask的情绪宣泄系统
spring boot·python·pycharm·django·flask·node.js·php
撸码猿8 小时前
《Python AI入门》第9章 让机器读懂文字——NLP基础与情感分析实战
人工智能·python·自然语言处理
二川bro8 小时前
多模态AI开发:Python实现跨模态学习
人工智能·python·学习
2301_764441338 小时前
Python构建输入法应用
开发语言·python·算法
love530love8 小时前
【笔记】ComfUI RIFEInterpolation 节点缺失问题(cupy CUDA 安装)解决方案
人工智能·windows·笔记·python·插件·comfyui
石像鬼₧魂石8 小时前
Netcat,网络瑞士军刀(新手学习备用)
学习
青瓷程序设计8 小时前
昆虫识别系统【最新版】Python+TensorFlow+Vue3+Django+人工智能+深度学习+卷积神经网络算法
人工智能·python·深度学习
秋邱9 小时前
智启未来:AGI 教育融合 × 跨平台联盟 × 个性化空间,重构教育 AI 新范式开篇:一场 “教育 ×AI” 的范式革命
人工智能·python·重构·推荐算法·agi
todoitbo9 小时前
基于 DevUI MateChat 搭建前端编程学习智能助手:从痛点到解决方案
前端·学习·ai·状态模式·devui·matechat
爱吃泡芙的小白白9 小时前
vscode、anaconda、git、python配置安装(自用)
ide·git·vscode·python·anaconda·学习记录