开发环境
django 3.2
为什么使用django 3.2?
目前django最新版本为4.0,但是最新的稳定版本为3.2,建议使用稳定版本进行学习
python 3.8.10
有条件的话建议使用python3.9+,但是python3.9 开始不支持win7了…
再加上现在阿里云腾讯云服务器默认python版本为3.8.10,所以我在win7环境下采用安装相同版本的python 3.8.10
pycharm professional 2020.3.2
下载安装pycharm: https://www.jetbrains.com/pycharm/
本项目下载安装 Professional 2020.3
版本,安装破解步骤可参考 百度网盘链接
创建项目
创建虚拟环境管理项目
Administrator@EK5756CF41Y63JU C:\workspaces
# python -m venv C:\venv\djstart_venv
Administrator@EK5756CF41Y63JU C:\workspaces
# C:\venv\djstart_venv\Scripts\activate.bat
(djstart_venv) Administrator@EK5756CF41Y63JU C:\workspaces
# pip install django==3.2
...
Installing collected packages: sqlparse, pytz, asgiref, django
Successfully installed asgiref-3.5.0 django-3.2 pytz-2021.3 sqlparse-0.4.2
通过django-admin创建项目
(djstart_venv) Administrator@EK5756CF41Y63JU C:\workspaces
# django-admin startproject djstart
(djstart_venv) Administrator@EK5756CF41Y63JU C:\workspaces
# cd djstart
(djstart_venv) Administrator@EK5756CF41Y63JU C:\workspaces\djstart
# tree /f
卷 Windows7 的文件夹 PATH 列表
卷序列号为 A2A7-A8AC
C:.
│ manage.py
│
└─djstart
asgi.py
settings.py
urls.py
wsgi.py
__init__.py
通过manage.py创建app
(djstart_venv) Administrator@EK5756CF41Y63JU C:\workspaces\djstart
# python manage.py startapp app_demo
(djstart_venv) Administrator@EK5756CF41Y63JU C:\workspaces\djstart
# tree /f
卷 Windows7 的文件夹 PATH 列表
卷序列号为 A2A7-A8AC
C:.
│ manage.py
│
├─app_demo
│ │ admin.py
│ │ apps.py
│ │ models.py
│ │ tests.py
│ │ views.py
│ │ __init__.py
│ │
│ └─migrations
│ __init__.py
│
└─djstart
│ asgi.py
│ settings.py
│ urls.py
│ wsgi.py
│ __init__.py
项目导入到pycharm中进行开发
- 打开项目
pycharm->File->Open File or Project 选择项目C:\workspaces\djstart
打开如下
- 设置python环境
- 运行项目
项目结构分析
项目和应用有什么区别?
应用是一个专门做某件事的网络应用程序——比如博客系统,或者公共记录的数据库,或者小型的投票程序。
项目则是一个网站使用的配置和应用的集合。项目可以包含很多个应用。
应用可以被很多个项目使用。
用于开发的简易服务器
python manage.py runserver
在本地机器上启动一个轻量级的开发 Web 服务器。
默认情况下,该服务器在 IP 地址 127.0.0.1 的 8000 端口上运行。你可以明确地传递一个 IP 地址和端口号。
本服务器使用 WSGI_APPLICATION 配置中指定的 WSGI 应用对象。
请勿在生产环境中使用本服务器
用于开发的服务器在需要的情况下会对每一次的访问请求重新载入一遍 Python 代码。所以你不需要为了让修改的代码生效而频繁的重新启动服务器。
然而,一些动作,比如添加新文件,将不会触发自动重新加载,这时你得自己手动重启服务器。
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。