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

相关推荐
今天也要加油丫10 分钟前
`re.compile(r“(<.*?>)“)` 如何有效地从给定字符串中提取出所有符合 `<...>` 格式的引用
python
@月落30 分钟前
alibaba获得店铺的所有商品 API接口
java·大数据·数据库·人工智能·学习
6230_40 分钟前
git使用“保姆级”教程1——简介及配置项设置
前端·git·学习·html·web3·学习方法·改行学it
农民小飞侠1 小时前
python AutoGen接入开源模型xLAM-7b-fc-r,测试function calling的功能
开发语言·python
战神刘玉栋1 小时前
《程序猿之设计模式实战 · 观察者模式》
python·观察者模式·设计模式
敲代码不忘补水1 小时前
Python 项目实践:简单的计算器
开发语言·python·json·项目实践
李小星同志2 小时前
高级算法设计与分析 学习笔记6 B树
笔记·学习
霜晨月c2 小时前
MFC 使用细节
笔记·学习·mfc
鸽芷咕3 小时前
【Python报错已解决】ModuleNotFoundError: No module named ‘paddle‘
开发语言·python·机器学习·bug·paddle
小江湖19943 小时前
元数据保护者,Caesium压缩不丢重要信息
运维·学习·软件需求·改行学it