Django目录结构及含义

1、目录结构

在这里插入图片描述

2、创建项目

首先创建项目,利用Pycharm创建项目后,会默认生成则MyDjango文件夹和manage.py文件。如图:
在这里插入图片描述
其中manage.py和MyDjango文件夹中的4个文件说明如下:

  • manage.py:命令行工具,内置多种方式与项目进行交互。在命令提示符窗口下,将路径切换到MyDjango项目并输入python manage.py help,可以查看该工具的指令信息。
  • __init__.py:初始化文件,一般情况下无需修改。
  • settings.py:项目配置文件,项目的所有功能都需要在该文件中进行配置。
  • urls.py:项目的路由设置,设置网站的具体内容。
  • wsgi.py:全称为Python Web Server Gateway Interface,即Python服务器网关接口,是Python应用与Web服务器之间的接口,用于Django项目在服务器上的部署和上线,一般不需要修改。

3、创建项目应用

完成项目创建之后,接着创建项目应用,项目应用简称APP,相当于网站功能,每个APP代表网站的一个功能,App创建由文件manage.py实现,创建指令如下:

F:\WorkSpace\MyDjango> python manage.py startapp index
#要在manage.py 所在的同级目录下执行,也就是项目的根目录下执行此命令。index为应用的名称

此时项目默认生成如下文件:
在这里插入图片描述
说明如下:

  • migrations:用于生成数据迁移文件,通过数据迁移文件可自动在数据库里生成相应的数据表。
  • __init__.py:index文件夹的初始化文件。
  • admin.py:用于设置当前App的后台管理功能。
  • app.py:当前App的配置信息,在Django版本后自动生成,一般情况下无需更改。
  • models.py:定义数据库的映射类,每个类可以关联一张数据表,实现数据持久化,即MTV里面的模型(Model)。
  • test.py: 自动化测试的模块,用于实现单元测试。
  • view.py: 视图文件,处理功能业务逻辑,即MTV里面的视图(Views)。

4、创建模板文件

在这里插入图片描述
默认生成template文件夹,没有的话自己建就好。里面主要放些.html文件。template文件夹中的index.html是自建的。

5、其他

1. 项目应用中的urls.py文件

在这里插入图片描述
在App应用中添加urls.py文件是将所有属于App的路由都写入该文件中,这样易于和区分每个App的路由地址,而MyDjango文件夹的urls.py是将每个App的urls.py统一管理。
工作原理如下:

  1. 运行MyDjango项目时,Django从MyDjango文件夹的urls.py找到各个App所定义的路由,生成完整的路由列表。
  2. 当用户在浏览器上访问某个路由地址时,Django就会收到该用户的请求信息。
  3. Django从当前请求信息获取路由地址,并在路由地址列表里匹配相应的路由信息,再执行路由信息所指向的视图函数(或视图类),从而完成整个请求响应过程。
2.项目中db.sqlite3文件

在这里插入图片描述
这个文件是默认生成的,由于Django默认配置的数据库是SQLLite,因此在启动项目之后,在MyDjango的目录里自动创建db.sqlite3文件。

6、简单的用户访问网页过程

  1. 当用户咋浏览器访问网址的时候,该网址在项目所设置的路由(urls.py文件)里找到相应的路由信息。
  2. 然后从路由信息里找到视图函数(views.py文件),由视图函数处理用户请求。
  3. 视图函数将处理结果传递到模板文件(index.html文件),由模板文件生成网页内容,并在浏览器里展现。

注: 启动Django项目(有多种启动方法),并在浏览器访问路由地址(http://127.0.0.1.8000,127.0.0.1是本机地址,多用于测试,8000是默认的的端口)即可看到展现出的网页。

  • 4
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值