(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 ...
随机推荐
- python常用内建模块 collections,bs64,struct,hashlib,itertools,contextlib,xml
# 2 collections 是Python内建的一个集合模块,提供了许多有用的集合类. # 2.1 namedtuple #tuple可以表示不变集合,例如,一个点的二维坐标就可以表示成: p ...
- Cracking The Coding Interview3.3
//Imagine a (literal) stack of plates. If the stack gets too high, it might topple. Therefore, in re ...
- C# struct and enum
struct Person { public int age; public string name; public string fname; public string class; } enum ...
- day 36 关于io模型的问题 阻塞 和多路复用
# from gevent import spawn,monkey;monkey.patch_all()# from socket import *# def server(ip,port):# se ...
- Nginx日志和http模块相关变量
$arg_PARAMETER #HTTP 请求中某个参数的值,如/index.php?site=www.ttlsa.com,可以用$arg_site 取得 www.ttlsa.com 这个值. $ar ...
- mongodb启动出现Failed to connect to 127.0.0.1:27017 after 5000ms milliseconds,giving up
今天一早准备继续学习mongodb,但是在命令行运行mongo.exe报错 出错原因:mongod一不小心被非法关闭,留下了一个mongod.lock, 将数据库给锁定了 解决方法: 1)在data路 ...
- global $GLOBALS 区别
PHP代码 复制代码 代码如下: <?php // 例子1 function test_global() { global $var1, $var2; $var2 =& $var1; } ...
- FMX取得屏分辨率
procedure Tfrm_Main.FormCreate(Sender: TObject); var ScreenSvc: IFMXScreenService; Size: TPointF; be ...
- mysql增删改查练习
Mysql增删改查sql语句练习 关于数据库的一些操作: 进入mysql 命令行: mysql -uroot –p 查看所有数据库: show databases; 创建数据库: create dat ...
- jQuery中extend()实现原理
jQuery.extend使用的几种方式 1.jQuery.extend(源对象) jQuery源代码: if(length == i){ target = this; --i; } 示例1: var ...