一个项目可以理解为一个网站,创建 Django 项目可以在终端窗口 (Windows 下为命令提示符) 输入指令完成。打开终端窗口,将当前路径切换到桌面并输入项目创建指令:
cd ~
cd Desktop
django-admin startproject MyDjango
第一行指令是将当前终端路径切换到根路径之下;第二行指令是进入到桌面目录;第三行指令是在桌面目录中创建 Django 项目,指令中的 “MyDjango” 是项目名称,童鞋可以自行命名。项目创建后,可以在桌面上看到新创建的文件夹 MyDjango,在 PyCharm 下查看改目录的结构:
MyDjango 项目包含 MyDjango 文件夹 和 manage.py 文件,而 MyDjango 文件夹又包含 5 个 .py 文件。项目的各个文件说明如下:
manage.py:命令行工具,内置多种方式与项目进行交互。在终端窗口下,将路径切换到 MyDjango 项目并输入 python manage.py help,可以查看该工具的指令信息。
init.py:初始化文件,一般情况下无需修改。
asgi.py:开启一个 ASGI 服务,ASGI 是异步网关协议接口。
settings.py:项目的配置文件,项目的所有功能都需要在该文件中进行配置,配置说明会在下一章详细讲述。
urls.py:项目的路由配置,设置网站的具体网址内容。
wsgi.py:全称为 Python Web Server Gateway Interface,即 Python 服务器网关接口,是 Python 应用于 Web 服务器之间的接口,用于 Django 项目在服务器上的部署和上线,一般不需要修改。
完成项目的创建后,接着创建项目应用,项目应用简称为 App,相当于网站功能,每个 App 代表网站的一个功能。App 的创建由文件 manage.py 实现,创建指令如下:
cd MyDjango
python manage.py startapp index
在上图中可以看到,项目新建了 index 文件夹,其可作为网站首页。在 index 文件夹可以看到有多个 .py 文件和 migrations 文件夹,说明如下:
migrations:用于生成数据迁移文件,通过数据迁移文件可自动在数据库里生成相应的数据表。
init.py:index 文件夹的初始化文件。
admin.py:用于设置当前 App 的后台管理功能。
apps.py:当前 App 的配置信息,在 Django 1.9 版本后自动生成,一般情况下无需修改。
models.py:定义数据库的映射类,每个类可以关联一张数据表,实现数据持久化,即 MTV 中的模型 (Model) 。
tests.py:自动化测试的模块,用于实现单元测试。
views.py:视图文件,处理功能的业务逻辑,即 MTV 中的视图 (Views) 。
完成项目和 App 的创建后,最后在终端窗口中输入以下指令启动项目:
cd MyDjango
python manage.py runserver