自动化测试平台搭建系列(2)——新手学习Django,创建第一个“APP”

文章目录


Django的环境搭建及入门请查看上篇文章,链接如下:
自动化测试平台搭建系列(1)——新手学习Django,入门及环境搭建
在一个项目中,一般有很多个功能模块,每个功能一般会对应一个app来实现其功能,两个模块之间的耦合度越低越好、尽量做到相互独立
app是Django项目的组成部分,一个app代表项目中的一个模块,所有URL请求的响应都是由app来处理
在每个django项目中可以包含多个APP,相当于一个大型项目中的分系统、子模块、功能部件等等,相互之间比较独立,但也有联系。
可以简单理解成自动化框架中的封装模块这种的

所有的APP共享项目资源。
在pycharm下方的terminal终端中输入命令:
通过命令python manage.py startapp app名称即可创建app
如执行python manage.py startapp app_demo
这样就创建了一个叫做app_demo的APP,django自动生成“app_demo”文件夹。
在这里插入图片描述
生成的app_demo目录结构如下:
在这里插入图片描述
admin.py:用于后台管理
apps.py:该app的相关配置,对应应用的配置文件
models.py:定义数据模型,数据模块,用于设计数据库等
tests.py:编写测试代码
views.py:视图层,接收请求、处理数据,直接和浏览器进行交互

每次新建一个App我们需要将其在settings.py文件中的INSTALLED_APPS里进行注册,这样程序才能够找到这个服务
在这里插入图片描述
创建好APP,配置好INSTALLED_APPS后,开始万能的“HelloWorld”了
第一步、编写路由
路由都在urls文件里,它将浏览器输入的url映射到相应的业务处理逻辑。
简单的urls编写方法如下图:
1、首先导入对应APP的views文件

from app_demo import views

2、注释掉admin的路由,设置自己的路由

url(r'^index/',views.index)

3、导入URL

from django.conf.urls import url

urls.py完整代码:

from laomomo import views#导入views模块
from django.conf.urls import url
 
urlpatterns=[
    url(r'^index/',views.index)#配置当访问index/时去调用views下的index方法
]

在这里插入图片描述

第二步、编写业务处理逻辑
业务处理逻辑都在views.py文件里
views.py文件里是空的,需要自己编写业务逻辑
打开app_demo目录下的views.py, 开始撸!
1、导入HttpResponse模块

from django.shortcuts import HttpResponse

2、编写

def index(request):#request是必须带的实例。类似class下方法必须带self一样
    return HttpResponse("Hello World!!")#通过HttpResponse模块直接返回字符串到前端页面

完整代码:

from django.shortcuts import HttpResponse  
def index(request):
    return HttpResponse("Hello World!!")
 

第三步、运行web服务
现在我们已经可以将web服务运行起来了。
terminal下执行 python manage.py runserver 这样执行默认的路径是127.0.0.1:8080
指定端口或地址就再后面写上,如:python manage.py runserver 127.0.0.1:8888
在这里插入图片描述

执行完之后发现报错了
原因是我指定的是index,而链接地址没有到index页
在这里插入图片描述
然后修改了urls.py
添加“/index”,就一切就都好了
在这里插入图片描述

settings.py是整个Django项目的配置文件,里面会涉及到一些必须的配置和一些默认的配置,改错了项目就运行不起来了,所以还是很有必要首先把settings.py 里的配置项搞清楚的
打开settings.py文件后会看到有以下几个配置项:
BASE_DIR
SECRET_KEY
DEBUG
ALLOWED_HOSTS
INSTALLED_APPS
MIDDLEWARE
ROOT_URLCONF
TEMPLATES
WSGI_APPLICATION
DATABASES
AUTH_PASSWORD_VALIDATORS
LANGUAGE_CODE
TIME_ZONE
USE_I18N
USE_L10N
USE_TZ
STATIC_URL
DEFAULT_AUTO_FIELD
我后悔了。。。为啥要梳理这么个玩意。。。东西好多呀,对于英语渣渣的我来说就是作死的节奏!
本来想和这个文章写在一起,但写了一半发现好像有点多,那就另起一篇文章吧。。。
附上链接地址(九十度弯腰双手奉上!):
自动化测试平台搭建系列(3)——详细解析Django中的settings.py内的配置


版权声明:本文为weixin_42684559原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。