扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
这篇文章主要讲解了在Windows下怎么搭建高效的django开发环境,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。
创新互联建站-专业网站定制、快速模板网站建设、高性价比大安市网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式大安市网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖大安市地区。费用合理售后完善,十载实体公司更值得信赖。从初学 django 到现在(记得那时最新版本是 1.8,本文发布时已经发展到 3.1 了),开发环境一直都是使用从官方文档或者别的教程中学来的方式搭建的。但是在实际项目的开发中,越来越感觉之前的开发环境难以适应项目的发展。官方文档或一些教程中的环境搭建方式主要存在这些问题:
python manage.py runserver
启动的开发服务器热重载非常慢,尤其是当项目中导入了大量模块时,有时候改一次代码要等几秒钟才能完成重载。 主力开发环境为 Windows + PyCharm,然而有时候依赖的一些服务只能在 Linux 下运行(例如 Celery 以及其他一些异步任务的库如 django-q )。
针对以上的一些痛点,我在实际开发当中逐步摸索出一套新的开发环境搭建方法,用来搭建一套舒适的 django 开发环境,总的来说,新的环境包括以下几个方面的改进:
PyCharm 创建 django 项目
Django 项目开发选 PyCharm,当然你也可以使用 VS Code,不过极有可能随着一通折腾和配置之后,你会发现终于成功地把 VS Code 配置成了一个 PyCharm。所以为了节约有限的开发时间以及生命,推荐直接使用 PyCharm。
PyCharm 创建一个 django 项目非常简单,如果是第一次打开 PyCharm,点击 + Create New Project 就会弹出创建新项目的对话框。如果已经打开过别的项目,则依次点击顶部导航条的 File > New Project 也会弹出创建新项目的对话框。
然后在对话框左侧点击 django ,就会进入 django 项目的配置页面,完成一些初始化设置,PyCharm 就会自动为我们创建一个新的 django 项目。
Django 项目的配置页面如图:
Location配置项会让你选择项目位置,例如我要在 C:\Users\user\SpaceLocal\Workspace\G_Courses\
目录下创建一个名为 django_dev_env_demo
的项目,就填写 C:\Users\user\SpaceLocal\Workspace\G_Courses\django-dev-env-demo
。
然后 Project Interpret 选项的展开项中有 2 个选项
勾选这个选项将使用你选择的虚拟环境创建工具为新建的项目创建一个 Python 虚拟环境。PyCharm 支持多种虚拟环境创建工具,默认为自带的 Virtualenv。我之前习惯使用 Pipenv,只需要在系统全局使用 pip install pipenv
后,PyCharm 就会自动发现 Pipenv 的存在。不过现在我更加倾向于使用 Poetry,PyCharm 目前还没有集成 Poetry,但是可以在创建完项目后手动设置 Poetry,配置也是超级简单,将在后面介绍。
创建新的虚拟环境需要指定一个 Base interpreter 基础 Python 环境,通常 PyCharm 会自动发现系统当前正在使用的 Python 解释器,如果 PyCharm 没有自动发现或者想要更换为系统中其它的 Python 解释器版本,也可以在 Base interpreter 选项里手动选择 Python 解释器。
使用 Pipenv 创建虚拟环境时,PyCharm 同样会自动发现系统中安装的 Pipenv 工具,如果没有发现,也可以在选项中手动选择。
勾选这个选项将使用系统已有的 Python 环境。
More Settings选项的展开项中包含更多的 django 初始化设置:
使用的模板引擎,如果没有特别理由,当然是选择 django 自带的模板引擎,当然不嫌麻烦也可以选择 jinja2。
存放模板的文件夹名称。默认即可,后续可以在项目中更改。
django app 名称,填不填都行,后续可以使用 python manage.py startapp
命令来创建 django app。
勾选 Enable Django admin 将启用 django 自带的 admin 管理后台。
配置完成后,点击 Create 就可以创建一个全新的 django 项目了。
Uvicorn 运行 django
之前说过,django 内置的开发服务器在修改代码后的热重载非常缓慢,我发现 uvicorn 的重载速度要快得多,所以新项目第一件事,就是使用在开发环境下使用 uvicorn 运行 django。
首先当然要安装 uvicorn。
安装 uvicorn 非常简单,首先打开 PyCharm 的 Terminal,PyCharm 会自动帮我们激活项目关联的虚拟环境,所有命令将在虚拟环境执行,非常方便。执行 pipenv install uvicorn
安装 uvicorn 就可以了。
Uvicorn 安装好后,可以在命令行使用 uvicorn 命令来运行 django。但是,每次输命令启动 django 会非常麻烦!最好的做法是创建一个脚本,启动 django 只需要执行脚本就可以了。
在 项目根目录 创建一个 run_uvicorn.py 的脚本(脚本名可以自己随便取),代码如下:
run_uvicorn.py
import uvicorn import os def main(): os.environ.setdefault("DJANGO_SETTINGS_MODULE", "django_dev_env_demo.settings") uvicorn.run( "django_dev_env_demo.asgi:application", host="0.0.0.0", port=8000, log_level="debug", reload=True, ) if __name__ == "__main__": main()
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流