Django的Hello World(一)

学完Django已经过去一个多月了,但是从开始学习到现在都是跟着视频敲代码,由于有提供完整的文档,所以很多时候是采用复制粘贴的方式进行的。

为了将知识内化,所以决定从今天开始新建一个Django项目。因为现在的职业算是自动化测试,所以本次的项目打算写一个自动化接口测试平台,为以后进阶测试开发做准备。

本文档只会跟着项目的前进进行单一的记录,不会覆盖式的把相关用法都讲明,所以相关具体内容请参考Django官方文档
中文版:https://docs.djangoproject.com/zh-hans/2.1/
英文版:https://docs.djangoproject.com/en/2.1/

创建项目

开始的第一步就是创建项目。
由于阿里云上已经被部署了一个项目,所以在未完成之前,该项目在本地编写与测试。使用的编辑器的Pycharm,使用的python版本为3.7


新建项目

点击左侧的Django进行项目的创建,最上方的Location是本地的存储路径,我把本次项目暂时命名为Zxapitest。

为了保持我乱七八糟的mac的环境正常,本次环境使用的基于python3.7的虚拟环境。

如图所示,它会在/Users/zhongxin/.virtualenvs/Zxapitest创建一个不带其他第三方库(带Django)的干净的环境,这么做的好处除了保持本地环境整洁之外,还可以轻松的移植到其他环境中,减少不必要的第三方库的安装。

django设置

这边是Django 的一些设置,Template是存放Django静态文件的地方,一些html,css,js 文件都会存放在templates文件夹中。

最后的勾选:Enable Django admin 是使用Django自带的admin后台管理系统。因为暂时没有想好是否要自己写后台,所以这里先选上,根据之后的需求变更进行修改。

最最最后就是点击Create进行构建了。

PS:使用pip安装Django后输入django-admin startproject Zxapitest也可以进行创建。

URL的概念

开始写web之前需要了解一下URL的概念

URL(Uniform Resoure Locator)统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。

schema://host[:port#]/path/.../[?query-string][#anchor]
schema:指定使用的协议(例如:http, https, ftp)
host:Http服务器的IP地址或者域名
port:端口号,http默认是80端口
path:访问资源的路径
query-string:发送给http服务器的数据
anchor:锚点

以百度搜索python为例:https://www.baidu.com/s?ie=UTF-8&wd=python
schema是https
host是www.baidu.com
port是默认端口80,因为默认,所以地址栏就省略了,如果非默认则会显示
path没有,有点尴尬。。。
query-string是s?ie=UTF-8&wd=python
anchor也没有,不重要。

其中域名和服务器IP之间有点关系,打开cmd使用ping www.baidu.com可以得到:

ping 百度

得到了115.239.210.27这个莫名其妙的IP,它是百度根据乱七八糟的网络环境,确定这个IP的服务器最适合你
一般公司越大,服务器越多,也就是这个公网地址对应的设备应该在你附近。这样在网络中传输的时间就可以相应的减少,从直观上可以看出,访问响应的速度会比较快。我们将它进行替换www.baidu.com这个域名。
替换域名

看,还是正常的得到了百度的服务。

开始项目

经过漫长...漫长...漫长的等待之后,终于进入Pycharm终于把项目给建好了。
大概长这样:

项目文件树状图

到这里,Django其实已经帮我们搭建好了一个网页了,我们要做的就是运行代码。
运行代码

点击绿色的运行按键,就可以运行左侧的Zxapitest这个Django项目了。
一般手动运行项目需要使用:
python manage.py runserver
但是既然Pycharm给我们搞好了,就偷个懒。

运行之后可以看到执行的结果

Performing system checks...

System check identified no issues (0 silenced).

You have 15 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
February 24, 2019 - 15:13:28
Django version 2.1.7, using settings 'Zxapitest.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

眼睛比较亮的同学应该一下子就可以看到http://127.0.0.1:8000/。所以,访问它。
可以看到欢迎光临~相当于我们已经学会了Hello world。

Django欢迎界面

既然刚才讲了URL,那么现在进入urls.py这个文件
可以看的如下几行代码

from django.contrib import admin
from django.urls import path

urlpatterns = [
    path('admin/', admin.site.urls),
]

里面的admin就是传说中的路由
在浏览器中输入http://127.0.0.1:8000/admin/,可以发现进入到了一个新的界面。

admin界面

PS:地址栏中的内容发生了变化,是被重定向了
下面是重定向的抓包内容:首先是301,再是302,再是200。所以我们最后看到的url是http://127.0.0.1:8000/admin/login/?next=/admin/
重定向

到此Django的Hello world就结束了

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

推荐阅读更多精彩内容