(4)django的新手三件套(返回页面、返回字符、重定向)
from django.shortcuts import render,HttpResponse,redirect
新手三件套,前期开发都会用到
render #向浏览器返回页面
HttpResponse #向浏览器返回字符内容
redirect #重定向
django里有分层的概念
urls.py就是路由层
views.py 就是视图层
templates.py 就是模板层
modles.py 就是模型层
django框架的简单使用
urls.py
from app01 import views #这里导入app01包下的模块
urlpatterns = [
url(r'^admin/', admin.site.urls),
# 执行函数的对应关系,这个是固定写法,第一个r后面跟的是一个路径,后面跟倒入的函数
url(r'index/',views.index),
]
views.py
from django.shortcuts import render,HttpResponse,redirect # Create your views here.
# 这里写函数
def index(request): # 这里一定要有一个形参,request这个是标准的写法
# 这个可以向浏览区返回内容
return HttpResponse('hello web')
PS:访问地址的时候需要在地址后面跟对应关系的路径,否则404报错
django返回一个html页面
urls.py
from app01 import views #这里导入app01包下的模块
urlpatterns = [
url(r'^admin/', admin.site.urls),
# 执行函数的对应关系,这个是固定写法,第一个r后面跟的是一个路径,后面跟倒入的函数
url(r'index/',views.index),
]
views.py
from django.shortcuts import render,HttpResponse,redirect # Create your views here.
# 这里写函数
def index(request): # 这里一定要有一个形参,request这个是标准的写法
# 这个可以向浏览区返回内容
return render(request,'index.html')
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>我是首页</title>
</head>
<body>
<h1>django的index页面</h1>
<a href="http://www.baidu.com">点击进百度</a>
</body>
</html>
django返回一个重定向
urls.py
from app01 import views #这里导入app01包下的模块
urlpatterns = [
url(r'^admin/', admin.site.urls),
# 执行函数的对应关系,这个是固定写法,第一个r后面跟的是一个路径,后面跟倒入的函数
url(r'index/',views.index),
]
views.py
from django.shortcuts import render,HttpResponse,redirect # Create your views here.
def index(request): # 这里一定要有一个形参,request这个是标准的写法
# 返回一个重定向
'''当你访问这个函数的时候,这个函数直接返回一个重定向的地址给你,这样你访问的就是这个返回的地址'''
return redirect('http://www.baidu.com') #如果这里是一个页面文件的地址,则前后都要加 / 否则会出错
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>我是首页</title>
</head>
<body>
<h1>django的index页面</h1>
<a href="http://www.baidu.com">点击进百度</a>
</body>
</html>
PS:重定向就是你发送一个请求,我返回另一个地址给你访问
关于路径的查找
默认django的settings文件里面已经写好了,就是当前项目的跟目录,如果项目下还有目录则自己可以拼写
返回模板文件夹templates下app01文件夹内的页面模板文件
from django.shortcuts import render,HttpResponse,redirect # Create your views here.
def index(request): # 这里一定要有一个形参,request这个是标准的写法
# 因为默认是项目根目录,所以直接可以写模板文件下文件及名字+文件名
return render(request,'app01/time.html')
关于urls里面路由和函数的对应关系,正则匹配
from app01 import views
urlpatterns = [
# 这里带了^ 就是以admin的开头字母a来正则匹配
url(r'^admin/', admin.site.urls),
# url是一个函数,后面跟的是函数的参数,第一个是一个正则表达式,只要能匹配上index就能执行函数
url(r'index',views.index),
# 如果是^ 开头和结束符号$结尾,就是只能匹配的路径只有index,写其他的都不行
url(r'^index$',views.index),
]
PS:用户请求的路径只有符合路由和函数的对应关系才能请求成功
(4)django的新手三件套(返回页面、返回字符、重定向)的更多相关文章
- Django + Mysql 中关于时间异常返回500错误的解决
问题描述: 最近在阿里云部署 Django(1.11.x) 时,在后台发布文章后,页面返回 500 异常. 刚开始的时候,遇到这个问题一脸懵逼,不知道该如何入手.后来把 settings.py 中 D ...
- SpringBoot如何返回页面
SpringBoot中使用Controller和页面的结合能够很好地实现用户的功能及页面数据的传递.但是在返回页面的时候竟然会出现404或者500的错误,我总结了一下如何实现页面的返回以及这里面所包含 ...
- iOS 从某个页面返回然后刷新当前页面
-------->不说废话 在返回页面实现下面方法: - (void)navigationController:(UINavigationController*)navigationContro ...
- 输入url到页面返回的过程
输入url后,你看到了百度的首页,那么这一切是如何发生的呢? 这个问题之前.最近.我想以后肯定还会被问到,或者问到这样的题目,如果在百度框里输入查询的字符串开始,是怎么返回你需要的东西呢. 那这什么个 ...
- 支付宝通知页面notify_url、返回页面return_url
返回页面(return_url文件)工作原理 即:商户系统请求/支付宝响应交互模式 1. 构造请求数据 商户通过提供的接口代码示例,通过代码示例的规则,程序构造与运算得到sign加密结果以及构造后的 ...
- jQuery Mobile页面返回无需重新get
最近公司的web app项目,使得我有幸一直接触和学习jQuery Mobile.这确实是一个很不错的移动开发库,有助于擅长web开发的工程师,快速入门并构建自己的移动应用.但是在前两天,我碰到了一个 ...
- ASP.NET设置404页面返回302HTTP状态码的解决方法
在配置文件中配置404页面如下: .代码如下: <customErrors mode="On" defaultRedirect="404.aspx"> ...
- 浏览器中输入URL到返回页面的全过程
第一步,解析域名,找到主机IP (1)浏览器会缓存DNS一段时间,一般2-30分钟不等.如果有缓存,直接返回IP,否则下一步. (2)缓存中无法找到IP,浏览器会进行一个系统调用,查询hosts文件. ...
- springmvc中返回页面,只在iframe中跳转,而不是整个页面,解决方法。
问题描述:在我写的主页面中用到了iframe,其中在iframe中有一个button点击提交,然后在Controller中返回页面的时候,是在iframe中打开的,而不是整个页面. 最开始我想用aja ...
随机推荐
- tensorflow之word2vec_basic代码研究
源代码网址: https://github.com/tensorflow/tensorflow/blob/r1.2/tensorflow/examples/tutorials/word2vec/wor ...
- C++中重载(overload)、覆盖(override)与隐藏(oversee)
body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...
- 第二篇 界面开发 (Android学习笔记)
第二篇 界面开发 第5章 探索界面UI元素 ●The Android View Class ●△Widget设计步骤 需要修改三个XML,以及一个class: 1)第一个xml是布局XML文件 ...
- Cracking The Coding Interview 3.5
//Implement a MyQueue class which implements a queue using two stacks. #include <iostream> #in ...
- Android : 基于alsa库的音乐播放
继上篇:Android : alsa-lib 移植 ,这篇随笔实现一个demo基于移植好的alsa库在Android平台上播放wav文件: 一.利用ffmeg将一个mp3文件转换成wav文件: (1) ...
- 深入理解java虚拟机---对象的结构(九)
注意: 我们可以看到的就是InstanceData的数据. 先转载一篇文章作为开头,因为讲的非常详细,我就简单加工下放到这里: 对象结构 在HotSpot虚拟机中,对象在内存中存储的布局可以分为3块区 ...
- HTML5触摸事件(touchstart、touchmove和touchend)
HTML5中新添加了很多事件,但是由于他们的兼容问题不是很理想,应用实战性不是太强,所以在这里基本省略,咱们只分享应用广泛兼容不错的事件,日后随着兼容情况提升以后再陆续添加分享.今天为大家介绍的事 ...
- git创建后的 各种命令 总结
.git status命令可以让我们时刻掌握仓库当前的状态,上面的命令告诉我们,readme.txt被修改过了,但还没有准备提交的修改. .$ git diff readme.txt git d ...
- 高级数据类型--列表[list]
List(列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组,专门用于存储 一串 信息,列表用 [] 定义,数据 之间使用 , 分隔,列表的 索引 从 0 开始. nam ...
- c# 中foreach 循环
使用foreach循环可以迭代数组或一个集合对象, 1.通过foreach 循环输出整型数组中的数组: 2.通过for循环输出整型数组中的元素: 3.foreach 循环设置数组元素的计算器: cla ...