说明:
1.笔记来源于B站up主达内官方和千锋教育的教学视频、一些书籍以及自己的总结
2.Django官方参考文档:https://docs.djangoproject.com/zh-hans/3.2/
一、环境搭建
1.Django安装
一键安装
- 创建虚拟环境
pip install virtualenv
virtualenv xxx
- 进入虚拟环境
./bin/activate //linux
.\Scripts\activate.bat //windows
- 退出虚拟环境
./bin/deactivate //linux
.\Scripts\deactivate.bat //windows
- 安装Django环境
pip install django
源码安装
tar -xvf Django-xx.xx.xx.tar.gz
cd Django-xx.xx.xx
sudo python setup.py install
sudo pip freeze | grep -i 'Django' //linux下检查是否安装成功(-i:不区分大小写)
2.项目创建
django-admin startproject xxx //创建
python manage.py runserver //启动(服务默认监听8000端口)
python manage.py runserver <port> //启动(设置监听端口)
二、项目结构
- db.sqlite3:数据库
- manage.py:包含项目管理的子命令
如:
python manage.py runserver:启动服务
python manage.py startapp:创建应用
python manage.py migrate:数据库迁移
直接执行python3 manage.py可列出所有的django子命令
- 项目同名文件夹
- init:python包的初始化文件
- wsgi.py:web服务网关的配置文件
- urls.py:主路由
- settings.py:配置文件
1.setting.py
- 项目配置项分为公有配置和自定义配置
- 官方提供的基础配置文档:https://docs.djangoproject.com/zh-hans/3.2/ref/settings
BASE_DIR = Path(__file__).resolve().parent.parent
# __file__:代表settings.py
# 所以这里BASE_DIR是settings.py的上级目录的上级目录,即项目的绝对路径
DEBUG=True
# True:调试模式
# 1.检测代码改动后立刻重启服务
# 2.页面报错
# False:正常启动模式/上线模式
ALLOW_HOSTS = ['192.168.1.1:8000']/['*']
# 允许访问本项目的请求头
# DEBUG为True,且此项为空的时候,localhost和127.0.0.1都可请求项目
# DEBUG为False的时候此项不可为空
ROOT_URLCONF = 'xxx.urls'
# 主路由的位置,一般不改此项
# xxx为项目同名文件夹名称
LANGUAGE_CODE = 'zh-Hans'/'en-us'
# 页面语言
TIME_ZONE = 'UTC'/'Asia/Shanghai'
# 时区
让局域网内其他主机也能访问到本地项目:
python manage.py runserver 0.0.0.0:8000
# setting.py
ALLOW_HOSTS = ['本机局域网ip:端口']
2.urls.py
主路由文件,负责将请求地址映射到视图函数
3.views.py
视图函数集合文件