目录
一、简介
-
Django:它是一个由 Python 编写的一个开放源代码的 Web 应用框架
-
网络请求流转:初始Nginx(高性能的HTTP和反向代理web服务器)转发到uwsgi(常用于在uWSGI服务器与其他网络服务器的数据通信)进行请求处理转发到django项目
-
项目部署参见:宝塔版:nginx+uwsgi+django配置
二、环境构建
2.1 安装pycharm软件
-
下载软件:去官网传送门,选择社区版Community,用edge下载,用chrome打不开网页,不知道咋回事
-
新建项目
虚拟空间:创建一个软件安装环境,虚拟空间中安装的软件版本与计算机系统里面的软件版本相互隔离,便于移植到其他系统使用
2.2 安装Django
- Django版本
建议:安装长期支持版本LTS,根据官网示意选择
2.2.1 Django初始化
- 步骤示意
- 第1步问题:命令行前缀不是
(venv)
- 第2步问题:以豆瓣源安装django:
pip3 install django==3.2 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
2.2.2 配置文件
- 项目setting.py文件
# 这句定义项目根目录,settings.py的祖父目录,见下Path模块 BASE_DIR = Path(__file__).resolve().parent.parent ALLOWED_HOSTS = ['*'] # 设置项目访问白名单IP LANGUAGE_CODE = 'zh-hans' # 设置显示语言 TIME_ZONE = 'Asia/Shanghai' # 设置时区
- Path模块
from pathlib import Path # 代码所在文件的绝对路径 # C:\django_projects\test1\test2\test.py BASE_DIR = Path(__file__).resolve() # test.py BASE_DIR = Path(__file__) # C:\django_projects\test1\test2 BASE_DIR = Path(__file__).resolve().parent # C:\django_projects\test1 BASE_DIR = Path(__file__).resolve().parent.parent
- 查看版本
# 命令行显示依赖包列表 pip freeze # 文件显示依赖包列表 pip freeze > requirements.txt
2.3 常见问题
2.3.1 提示:No Python Interpreter
适用于初始化未设置虚拟环境,有虚拟环境的话,在第3、4步直接选即可
- 安装Python:退出pycharm,去Python官网传送门,下载安装
- 打开pycharm:
File==>Settings...
修改如下
2.3.2 提示:此系统中禁止执行脚本
- 原因:默认系统禁用脚本,Restricted 执行策略不允许任何脚本运行
- 解决:终端输入
set-ExecutionPolicy RemoteSigned
,RemoteSigned执行策略运行有数字签名的脚本
2.3.3 未自动加载虚拟环境
-
从powershell切换到CMD模式
-
选择已存在的虚拟环境解释器
-
重启pycharm
# 原终端显示 PS D:\django_dir\main> # 调整后终端显示 (venv) D:\django_dir\main>
三、配置并启动Django
3.1 启动Django项目
- 终端进入项目:
cd main
- 终端运行项目:
python manage.py runserver
3.2 启动成功页面
-
终端显示如下
December 15, 2020 - 16:34:07 Django version 3.2, using settings 'main.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CONTROL-C.
-
点击链接显示下图,则成功
四、git 管理
4.1 本地操作
4.1.1 前置准备
- 前提:项目已经创建完成,并可以正常运行
- 文件目录
4.1.2 命令
-
本地仓库初始化:切换到
C:\django_dir\test1\designOA
目录 -
创建远程仓库/仓库网址
-
操纵命令
# 以下命令会在远程仓库创建完转到的页面显示 # git项目初始化,此处生成本地main主分支 # 在当前目录生成一个.git文件夹 # 可以通过git branch查看本地分支列表 git init # 设置上传的远程仓库的配置 # --global针对系统上所有仓库,去掉只针对当前仓库 git config --global user.name "用户名" git config --global user.email "用户邮箱" # 设置远程仓库主机在本地的代号origin git remote add origin https://仓库网址.git # 将当前文件夹内文件添加到本地暂存区,Git开始对这些文件进行跟踪 # 追踪命令写法:git add 文件名/文件夹名 git add . # 将本地暂存区传到本地主分支main中,并添加备注 git commit -m "初始化" # 将本地仓库main主分支,推送到远程仓库origin的main主分支上 git push origin main
-
日常使用
# 编辑前先拉取远程仓库到本地 # 若非首次拉取,可直接git pull即可 git pull origin main # 此命令是强制线上覆盖线下代码: 线上分支/本地分支 git fetch --all && git reset --hard origin/main && git pull # 。。。进行文件编辑。。。 # 将修改提交到远程仓库commit git add . # 此步可多次操作,commit是关键提交步 git commit -m "备注内容" git push origin main
4.2 异地操作
场景:工作电脑变动
-
创建目录及项目:
C:\django_dir\test
-
操纵命令
# 克隆远程仓库到本地 # 克隆后会在test目录下生成designOA文件夹,并将仓库里的文件放到此文件夹内 (venv) C:\django_dir\test>git clone https:仓库网址.git designOA # 进入项目内 cd designOA # 安装依赖:由pip freeze>requirements.txt生成 pip install -r requirements.txt # 解释参考4.1节 git init git config --global user.name "用户名" git config --global user.email "用户邮箱" git remote add origin https://仓库网址.git
-
日常使用:同4.1节
4.3 常用命令
- 版本管理
命令 注释 git branch
显示本地分支列表 git branch 分支名
增加本地分支 git checkout 分支名
切换当前活动的本地分支,当你切换分支的时候,Git 会用该分支的最后
提交的快照替换你的工作目录的内容, 所以多个分支不需要多个目录
当前活动分支前面有*
git branch -d 分支名
删除分支 git merge 待合并分支名
合并两个分支:切换到主分支,运行这条命令,运行无冲突后,删除
待合并分支,若有冲突,根据提示修改,修改结束后,用git add 文件名
,
提示git已处理好冲突git rm --cached 文件/文件夹
从跟踪列表中删除 - 远程仓库管理
命令 注释 git remote -v
显示远程仓库网址 git remote remove 远程仓库名称
删除远程仓库 git remote add 仓库代号 远程仓库网址
增加远程仓库 - git补充:点此处