一、Django的入门

学习思路:先安装Django,然后在建立一个项目,接着运行这个项目,最后修改一下这个项目的数据,学习一下Django的原理之类的。

1、安装Django

$pip install django==1.10.3

  PS:为了保持和书中的Django版本一致,使用django==版本号来制定安装。

安装完成后,python的script的目录中会出现一个django-admin的可执行文件。该文件可用于建立django的项目。

2、建立一个项目

$django-admin startproject 项目名  #建立一个项目

如图:创建一个名为guest的项目。

3、分析一下项目的目录结构

setting.py:项目配置文件,包括应用配置、数据库配置、模板配置等

urls.py:项目的url声明

wsgi.py:web服务器的入口点,与WSGI接口

manage.py:命令行工具,可以让你使用django项目时以不同的方式进行交互。【包括建立应用,启动服务等】

4、建立一个应用

  一个项目可以包含多个应用,而接下来开发的签到系统需要在具体的应用下完成

>python manage.py startapp sign

应用的目录结构:

  

migrations:用于记录models中数据的变更

admin.py:映射models中的数据到django自带的admin后台

apps.py:应用程序的配置

models.py:跟数据库操作有关

tests.py:测试用例

views.py:Django的视图文件,控制前端的显示内容。

5、启动Django服务

使用如下命令可启动服务:

>python manage.py runserver

也可以在后面加具体的端口,默认为8000

>python manage.py runserver 127.0.0.1:8001

6、修改配置文件,显示Hello Django

  在urls.py文件中增加默认路径,

from sign import views

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

重启服务后发现报错,因为在views文件中缺少index

from django.http import HttpResponse

def index(request):
return HttpResponse("Hello Django!")

7、使用模板

在sign下新建一个templates文件夹,在文件夹中建立一个index.html的文件。

使用render函数来请求index.html对象。

from django.shortcuts import render

def index(request):
return render(request, "index.html")

  PS:如果遇到了TemplateDoesNotExist的错误,那需要更改setting文件中TEMPLATES的DIR参数,将路径定位到自己设置的应用的templates下。

8、Django的工作流

  页面显示的内容首先:从入口urls.py文件中查找url地址,格式为:

urls.py

urlpatterns = [
url(r'^index/', views.index)
]

  url中定义了view层,因此需要到views文件中查找对应的函数,如:index函数

  index函数中定义了是直接返回页面内容或者是引用模板来呈现内容。

  这里缺失数据层,后面继续补充完整。

《Web接口开发与自动化测试》学习笔记(一)的更多相关文章

  1. 《Hadoop》大数据技术开发实战学习笔记(二)

    搭建Hadoop 2.x分布式集群 1.Hadoop集群角色分配 2.上传Hadoop并解压 在centos01中,将安装文件上传到/opt/softwares/目录,然后解压安装文件到/opt/mo ...

  2. 《Hadoop大数据技术开发实战》学习笔记(一)

    基于CentOS7系统 新建用户 1.使用"su-"命令切换到root用户,然后执行命令: adduser zonkidd 2.执行以下命令,设置用户zonkidd的密码: pas ...

  3. 超人学院Hadoop大数据技术资源分享

    超人学院Hadoop大数据技术资源分享 http://bbs.superwu.cn/forum.php?mod=viewthread&tid=807&fromuid=645 很多其它精 ...

  4. java大数据最全课程学习笔记(1)--Hadoop简介和安装及伪分布式

    Hadoop简介和安装及伪分布式 大数据概念 大数据概论 大数据(Big Data): 指无法在一定时间范围内用常规软件工具进行捕捉,管理和处理的数据集合,是需要新处理模式才能具有更强的决策力,洞察发 ...

  5. hadoop大数据技术架构详解

    大数据的时代已经来了,信息的爆炸式增长使得越来越多的行业面临这大量数据需要存储和分析的挑战.Hadoop作为一个开源的分布式并行处理平台,以其高拓展.高效率.高可靠等优点越来越受到欢迎.这同时也带动了 ...

  6. 除Hadoop大数据技术外,还需了解的九大技术

    除Hadoop外的9个大数据技术: 1.Apache Flink 2.Apache Samza 3.Google Cloud Data Flow 4.StreamSets 5.Tensor Flow ...

  7. 大数据技术之_09_Flume学习_Flume概述+Flume快速入门+Flume企业开发案例+Flume监控之Ganglia+Flume高级之自定义MySQLSource+Flume企业真实面试题(重点)

    第1章 Flume概述1.1 Flume定义1.2 Flume组成架构1.2.1 Agent1.2.2 Source1.2.3 Channel1.2.4 Sink1.2.5 Event1.3 Flum ...

  8. 大数据技术之_19_Spark学习_01_Spark 基础解析 + Spark 概述 + Spark 集群安装 + 执行 Spark 程序

    第1章 Spark 概述1.1 什么是 Spark1.2 Spark 特点1.3 Spark 的用户和用途第2章 Spark 集群安装2.1 集群角色2.2 机器准备2.3 下载 Spark 安装包2 ...

  9. 大数据技术之_16_Scala学习_01_Scala 语言概述

    第一章 Scala 语言概述1.1 why is Scala 语言?1.2 Scala 语言诞生小故事1.3 Scala 和 Java 以及 jvm 的关系分析图1.4 Scala 语言的特点1.5 ...

  10. 大数据技术之_16_Scala学习_04_函数式编程-基础+面向对象编程-基础

    第五章 函数式编程-基础5.1 函数式编程内容说明5.1.1 函数式编程内容5.1.2 函数式编程授课顺序5.2 函数式编程介绍5.2.1 几个概念的说明5.2.2 方法.函数.函数式编程和面向对象编 ...

随机推荐

  1. JDK1.8新特性之(一)--Lambda表达式

    近期由于新冠疫情的原因,不能出去游玩,只能在家呆着.于是闲来无事,开始阅读JDK1.8的源代码.在开始之前也查询了以下JDK1.8的新特性,有针对性的开始了这段旅程. 只看不操作,也是不能心领神会的. ...

  2. 手把手教你AspNetCore WebApi:Serilog(日志)

    前言 小明目前已经把"待办事项"功能实现了,API文档也搞定了,但是马老板说过,绝对不能让没有任何监控的项目上线的. Serilog是什么? 在.NET使用日志框架第一时间会想到N ...

  3. Semaphore最详细解析

    官方解释: 一个计数信号量.在概念上,信号量维持一组许可证.如果有必要,每个acquire()都会阻塞,直到许可证可用,然后才能使用它.每个release()添加许可证,潜在地释放阻塞获取方.但是,没 ...

  4. 我要告诉你:java接口中可以定义private私有方法

    在传统的Java编程中,被广为人知的一个知识点是:java Interface接口中不能定义private私有方法.只允许我们定义public访问权限的方法.抽象方法或静态方法.但是从Java 9 开 ...

  5. ansible-handlers变更执行操作

    1. ansible-handlers在变更执行操作  1) 编写playbook的handlers的配置文件 1 [root@test-1 bin]# vim /ansible/nginx/bin/ ...

  6. DE2资源集锦

    1.The School of Electrical and Computer Engineering (ECE) at the Georgia Institute of Technology:htt ...

  7. dict, hash

    dict: dictKey -- > dictVal example: dictEntry *dictFind(dict *d, const void *key)     Key is like ...

  8. Exists 和Not Exists使用

    描述:exists表示()内子查询语句返回结果不为空说明where条件成立就会执行主sql语句,如果为空就表示where条件不成立,sql语句就不会执行.not exists和exists相反,子查询 ...

  9. Linux发行版教你如何选 给入门者的选择通法

    Linux的发行版何止琳琅满目,简直是乱入你眼. 本篇将介绍选择发行版的经验和通用法则,主要会从PC角度去谈. 更新于2020年,初次发布于2017年 选择发行版需考虑哪些因素 选择发行版时需要考虑的 ...

  10. 《我想进大厂》之Dubbo普普通通9问

    这是面试专题系列第四篇,Dubbo系列.Dubbo本身并不复杂,而且官方文档写的非常清楚详细,面试中dubbo的问题一般不会很多,从分层到工作原理.负载均衡策略.容错机制.SPI机制基本就差不多了,最 ...