在新建的Django项目下,新建一个views的python文件,编辑如下代码

from django.http import HttpResponse

def hello(request):

    return HttpResponse("hello word")

逐行分析:

  • 先导包
  • 定义视图函数,函数的参数至少有一个参数 request
  • 返回 response对象

总结:python函数想要变成 视图函数,参数要有 request、返回值要是 response对象(有例外)


在url配置文件中url.py中,配置url对函数的映射

红框中,先导入刚才写的 hello函数,然后在urlpatterns(url实例列表)中做映射,第一个参数是路径url,第二个参数是函数方法

运行后,截图


正则表达式简单介绍

Django的 URL 配置允许使用任何正则表达式匹配复杂的 URL ,常用的正则表达式符号


总结下,刚才请求hello()函数,Django到底做了什么?

1、请求 /hello/。

2、Django 先到settings.py中查看 ROOT_URLCONF 设置,找到根 URL 配置。

3、Django 比较 URL 配置中的各个 URL 模式,找到与 /hello/ 匹配的那个。

4、如果找到匹配的模式,调用对应的视图函数。

5、视图函数返回一个 HttpResponse 对象。

6、Django 把 HttpResponse 对象转换成正确的 HTTP 响应,得到网页。


Django的特性:松耦合

因为 URL配置 和 视图函数 本身在两个地方

【二】Django 视图和url配置的更多相关文章

  1. Django学习day4——视图和URL配置

    创建一个简单的hello world 在day3中我们第一次运行了服务器,里面是一个django的欢迎页面,那是因为我们没有配置URL和视图,django在底层会自动跳转这个页面上 我们在mysite ...

  2. Django笔记 —— 高级视图和URL配置

    最近在学习Django,打算玩玩网页后台方面的东西,因为一直很好奇但却没怎么接触过.Django对我来说是一个全新的内容,思路想来也是全新的,或许并不能写得很明白,所以大家就凑合着看吧- 本篇笔记(其 ...

  3. 视图和URL配置

    视图和URL配置 实验简介 上一章里我们介绍了如何创建一个Django项目并启动Django的开发服务器.本章你将学到用Django创建动态网页的基本知识. 同时,也教会大家怎么在本地机器上建立一个独 ...

  4. django-高级视图和url配置

    高级视图和url配置 一.URLconf技巧 1.流线型化函数导入 对于配置url,我们可以使用以下几种方式: (1)引入view中的函数 from firstSite.view import cur ...

  5. 视图的URL配置,找不到我设置的第一个Page

    问题:视图的URL配置,找不到我设置的第一个Page 我的代码如下: 结果访问/test/时说找不到这个page   原因:patterns方法的参数有两个,一个是prefix,一个是参数元祖,详见下 ...

  6. django(二)视图和URL配置

    创建一份视图: 在上一节,使用django-admin.py startproject制作的mysite文件夹中,创建一个叫做views.py的空文件.这个Python模块健柏寒这一章的视图. vie ...

  7. 测试开发之Django——No8.Django中的视图与URL配置

    在Django中,页面内容是靠views function(视图函数)来产生,URL定义在URLconf中. 这是一个纯净项目的url配置文件,他存在的目录,是与setting文件在同一个目录中. u ...

  8. Django之视图和URL配置

    1.在创建项目时,Django会自动创建URL配置,在urls.py文件中 文件的默认内容如下所示: """mysite URL Configuration The ur ...

  9. Django框架1——视图和URL配置

    三个命令 1.创建一个django项目 在cmd中:django-admin.py startproject project_name D:\python\django_site>django- ...

随机推荐

  1. 分布式-信息方式-JMS Queue示例

    代码 package test.mq.helloword; import javax.jms.Connection; import javax.jms.ConnectionFactory; impor ...

  2. 10、kubernetes之RBAC认证

    一.kubectl proxy # kubectl proxy --port=8080 # curl http://localhost:8080/api/v1/ # curl http://local ...

  3. Java常见排序和编程算法

    快速排序算法 快速排序是由东尼·霍尔所发展的一种排序算法.在平均状况下,排序 n 个项目要Ο(n log n)次比较.在最坏状况下则需要Ο(n2)次比 较,但这种状况并不常见.事实上,快速排序通常明显 ...

  4. const变量的修改实践

    https://bbs.csdn.net/topics/110049293 #include <iostream> using namespace std; int main(){ cou ...

  5. 分组 vs 联合

    // 分组 function groupBy(groups) { return groups.reduce((pre, cur) => { pre[cur.groupId] = (pre[cur ...

  6. 方法二:Excel 2016 VBA工程密码破解

    将你要破解的Excel文件关闭,切记一定要关闭呀!然后新建一个Excel文件 打开新建的这个Excel,按下alt+F11,打开vb界面,新建一个模块,如图所示 将代码复制到这个模块中,代码如下:Pr ...

  7. Ubuntu16.04小白入门分享之 玩转Ruby你需要安装什么软件(持续更新)

    Ubuntu提示功能很强大,一般如果你想安装什么软件,可以直接输入名字,然后会有提示,安装格式一般为: sudo apt install 名字 Ubuntu14.04/16.04命令行快速安装Ruby ...

  8. 修改ubuntu终端显示目录和计算机名称(转)

    注意:使用方法:# PS1='自定义内容' 注意两边的单引号 示例: PS1='(\u@\H \d \t)\$' ------------------------------------------- ...

  9. cocos2dx[3.2](6) 节点类Node

    与2.x相比,节点类Node的属性和功能做了大幅度的修改与增加. Node类是绝大部分类的父类(并不是所有的类,例如Director类是直接继承Ref类的),如Scene.Layer.Sprite以及 ...

  10. php连接mysql,数据CRUD操作

    插入数据 <?php $name = $_GET['username']; $sex = $_GET['sex']; $hobby = $_GET['hobby']; $address = $_ ...