Django 2.0 学习(03):Django视图和URL(下)
接上篇博文,继续分析Django基本流程。
编写第一个(view)视图函数
1、打开文件polls/views.py,输入下面的Python代码:
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello World! You're at the polls index.")
2、上面是一个最简单的Django视图函数,为了调用这个视图函数,我们需要为它做一个URL映射;在目录polls下面创建文件urls.py,并在polls/urls.py文件中输入下面代码:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
3、接下来,需要将poll.urls指向根URLconf模块,在项目的mysite/urls.py文件添加django.urls.include,并且在urlpatterns列表中添加一个include(),如下所示代码:
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('polls/', include('polls.urls')),
]
4、现在我们可以来确认上面的操作是否正确工作,在mysite项目目录下运行下面命令:
python manage.py runserver
5、在浏览器中打开URL,我们将会看到"Hello World! You're at the polls index.",这个就是我们在index视图函数中定义的内容;
我们可以看到在浏览器中访问的结果也是正确的:

补充讲解
在这里,我们补充讲解一个函数:path,详细信息可以参考
path函数传递四个参数,两个必须参数:route和view;两个可选参数:name和kwargs
- path() 参数:route
route是一个包含URL pattern的字符串,当处理一个request请求的时候,Django从urlpatterns 列表中的第一个开始匹配,直到匹配到一个相符的URL;patterns不会搜索request请求的方法(GET、POST)或者domain name,例如下面的request请求https://www.example.com/myapp/,URLconf查找的是myapp/;在request请求https://www.example.com/myapp/?page=3,中URLconf依然查找的是myapp; - path()参数:view
当Django匹配到一个URL pattern,就会调用它对应的视图函数,该视图函数的第一各参数必须是request; - path()参数:name和kwargs
目前不做讲解,在后面部分的使用过程中逐步讲解;
Django 2.0 学习(03):Django视图和URL(下)的更多相关文章
- Django 2.0 学习(07):Django 视图(进阶-续)
接Django 2.0 学习(06):Django 视图(进阶),我们将聚焦在使用简单的表单进行处理和精简代码. 编写简单表单 我们将用下面的代码,来替换之前的detail模板("polls ...
- Django 2.0 学习(06):Django 视图(进阶)
概述 Django中的特方法,该方法代表了Django的Web页面,并且视图具有特定的模板.以博客应用为例进行说明,在博客应用中应该包含下面的视图: 博客主页:显示最近的一些记录: 详细页面:单个详细 ...
- Django 2.0 学习(04):Django数据库
数据库设置/配置 打开mysite/settings.py,我们会发现Django是用的是默认的数据库SQLite,如下图所示: Django也是支持其它数据库的,比如PostgreSQL.MySQL ...
- Django 2.0 学习(12):Django 模板语法
Django 模板语法 一.模板 只要是在html里面有模板语法就不是html文件了,这样的文件就叫做模板. 二.模板语法 模板语法变量:{{ }} 在Django模板中遍历复杂数据结构的关键是句点字 ...
- Django 2.0 学习(11):Django setuptools
应用打包 当前状态的Python包与各种工具有点儿混乱,本结我们将学习使用setuptools来构建应用包.该工具是强烈推荐使用的打包工具,之后我们也会使用pip去安装和卸载它. Python打包指的 ...
- Django 2.0 学习(08):Django 自动化测试
编写我们的第一个测试 确定bug 幸运的是,在polls应用中存在一个小小的bug急需修复:无论Question的发布日期是最近(最后)的日期,还是将来很多天的日期,Question.was_publ ...
- Django 2.0 学习(01):Django初识与安装
Django(Python Web框架) Django是一个开放源代码的Web框架,用Python写的.采用了MTV的框架模式,即模型M,模板T和视图V.它最初被开发是用来管理以新闻内容为主的网站,即 ...
- Django 2.0 学习
Django django是基于MTV结构的WEB框架 Model 数据库操作 Template 模版文件 View 业务处理 在Python中安装django 2.0 1 直接安装 pip inst ...
- Django 2.0 学习(19):Django 分页器
Django 分页器 要使用Django实现分页功能,必须从Django中导入Paginator模块(painator - 分页器) views.py from django.shortcuts im ...
随机推荐
- dubbo filter实现接口认证springboot idea
最近公司有业务需求,要对Dubbo接口调用者进行身份验证,验证通过才能调用,网上一些资料不够全面,遂整理了一下. 在provider方定义一个filter,需要实现com.alibaba.dubbo. ...
- 深入理解ES6之—对象
Object新方法 Object.is()方法 在js中比较两个值时,你可能会用相等运算符==或者严格相等运算符 ===.为了避免在比较时发生强制类型转换,许多开发者更倾向于使用后者. Object. ...
- 进入Docker容器
在进入Docker容器之前,首先要运行对应的Docker容器,先使用命令docker ps查看正在运行的容器. docker inspect --format='{{.NetworkSettings. ...
- 简单模拟一下ab压力测试
简单了解下ab ab全程是apache benchmark,是apache官方推出的一个工具,创建多个并发访问线程,模拟多个访问者同时对一个URL地址进行访问.它的测试目标是基于URL的,因此它既可以 ...
- Request processing failed; nested exception is java.lang.IllegalArgumentException: No converter found for return value of type: class cn.e3mall.pojo.TbItem
这个异常是缺少json相关的包 把以下依赖补上就好: <!-- Jackson Json处理工具包 --><dependency> <groupId>com.fas ...
- (2018干货系列一)最新Java学习路线整合
怎么学Java Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此Java语言具有功能强大和简单易用两个特征. 话不多说,直接上干货: ...
- 关于Maven的web项目的创建
网上关于Maven的web项目创建多种多样,先本人在研究Maven之余,创建一套自己试过并有效的创建步骤. 1.点击右键>选择Maven Project,如下图所示: 2.点击创建,如下图所示: ...
- 小说接入UC浏览器内核技术对话(一)
质辛@灿岩 质辛跟我们说一下那个删除文件的逻辑吧质辛@灿岩 应该不是删除cache下所有文件吧?质辛@智鹰 提供一下我们的临时文件完整路径给 灿岩吧质辛@智鹰 是负责我们ucsdk的 技术对接灿 ...
- dojo、iframe和FusionCharts兼容性
今天,我们项目组对项目收尾检查,却突然发现了一个问题,FusionCharts出现兼容性问题. 在火狐浏览器上,项目运行正常:在IE8(标准模式下)运行正常,但是在IE8杂项出现兼容性问题.经过检查, ...
- VS2008下QT开发环境搭建(转)
原博文地址:http://blog.csdn.net/sunnyboycao/article/details/6364444 VS2008集成QT4.7.2环境搭建 作者:jimmy 日期:2011- ...