Django源码分析1—目录结构

DJango是基于python的一款WEB快速开发框架,由于它简洁的语法和即插即用的模块调用,为我们创建WEB应用提供了极大的便利。阅读并学习Django源码,可以极大的提升我们的编程项目构造能力。接下来的几篇文章,我们从如何创建Django项目深入到它的实现原理,以便学习它优秀的项目思维。

我们在用django创建项目的时候,django会自动创建几个模块,下面详细介绍一下这几模块的作用及实现原理。

>> django-admin startproject project
源码截图

首先,我们打开项目的第一眼就会看到这个manage.py这个模块。先说说他的作用,从源码中我们可以看出,它导入django的管理模块执行命令行。并做了一些基本设置,主要是写入环境变量。它的作用就是执行一些djago的一些命令。如添加app,运行服务等。

>> python manage.py startapp name
>> python manage.py runserver

后期我们在django项目中执行的命令都是通过这个模块来调用的。
然后我们进入它的第一个目录,这层目录有4个文件,分别是init.py、settings.py、urls.py 、和wsgi.py模块。按照先后顺序,依次介绍。

首先是init.py,这个模块在这里主要的作用是做一些参数的初始化. 关于这个模块的详细细节大家请参阅官方文档。
项目的第二文件 settings.py 这个模块项目设置的主要文件。由于django的模块很多,我们在做项目的时候并不需要所有的模块,所以本着简介的特点django除了基本的模块并不会添加过多的模块,我们项目中如果需要django中的其他模块,就可以在设置文件中插入,即插即用非常方便。

部分源码

目录中的第三个文件是路由的配置及添加。我们在浏览网页的时候浏览器的地址栏中的地址就是url,通常web应用除了网站的域名后还有一些类似目录结构的文字,这些我们称之问路由。如下
路由

其中红色方框标注的东西就是路由地址。这个模块的主要功能就是配置网站中的路由地址的,需要注意的是django1.X和2.X的路由配置有变化,主要体现在它有url模块改成了path模块,我的djago版本为1.11.关于这个模块,后面还会继续详细介绍。

image.png

目录的最后的一个文件WSGI,WSGI的全称为:Web Server Gateway Interface(WEB 服务器 网关接口)它做的作用是为了配置好我们需要的服务器网关。在它的作用下我们运行了一个web应用。


wsgi

在我们没有创建app的时候,djgango的运行就是这样的。
image.png

到了这里基本的web应用可以创建好了,接下来我们需要为添加功能。在下一篇文章中我们将创建一个app,并详细介绍一下配置模块,和url模块相关细节。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,393评论 5 467
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,790评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,391评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,703评论 1 270
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,613评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,003评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,507评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,158评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,300评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,256评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,274评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,984评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,569评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,662评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,899评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,268评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,840评论 2 339

推荐阅读更多精彩内容