前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Django的Hello World(一)

Django的Hello World(一)

作者头像
zx钟
发布2019-07-17 17:20:36
7190
发布2019-07-17 17:20:36
举报
文章被收录于专栏:测试游记

学完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给我们搞好了,就偷个懒。

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

代码语言:javascript
复制
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这个文件 可以看的如下几行代码

代码语言:javascript
复制
1from django.contrib import admin
2from django.urls import path
3
4urlpatterns = [
5    path('admin/', admin.site.urls),
6]

里面的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就结束了

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-02-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试游记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 创建项目
  • URL的概念
  • 开始项目
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档