Django redirect()函数实现页面重定向
1,通过路由反向解析进行重定向
1.1 添加视图函数
myshop/app2/views.py
from django.http import HttpResponse
from django.shortcuts import render
from django.urls import reverse
def index(request):return HttpResponse("app2 的index")# 反向解析
def url_reverse(request):# 使用reverse()方法反向解析print('解析结果:'+ reverse("app2_url_reverse")) # 使用reverse()方法反向解析 ,reverse("app2_url_reverse") 对应urls的 name='app2_url_reverse'return render(request, "2/url_reverse.html")def test_get(request):print(request.get_host()) # 域名加端口print(request.build_absolute_uri()) # 获取完整的请求URI,包括查询字符串print(request.path) # 获取访问路径,不含参数print(request.get_full_path()) # 获取访问路径,不含参数print(request.method) # 获取请求中使用的HTTP方式(POST/GET)print(request.GET) # 获取GET请求的参数print(request.META["HTTP_USER_AGENT"]) # 用户浏览器的user-agent字符串print(request.META["REMOTE_ADDR"]) # 客户端IP地址print(request.GET.get('username')) # 获取get参数return HttpResponse("")# 获取请求中的使用HTTP方式(POST/GET)
def test_post(request):print(request.method)print(request.POST.get('username'))return render(request, '2/test_post.html')def test_response(request):response = HttpResponse()response.write("<h1>hello django</h1>")response.write("<br>")response.write(response.content)response.write("<br>")response.write(response['Content-Type'])response.write("<br>")response.write(response.status_code)response.write("<br>")response.write(response.charset)response.write("<br>")return responsedef test_render(request):return render(request, '2/test_render.html', {'info':'hello django'}, content_type='text/html; charset=utf-8')from django.shortcuts import redirectdef test_redirect_views(request):return redirect('test_render')

1.2 添加路由地址
myshop/app2/views.py
from django.urls import path, re_path
from . import viewsurlpatterns = [path('index', views.index, name='index'),path('url_reverse', views.url_reverse, name='app2_url_reverse'), # 使用reverse()方法反向解析 ,name对于视图的reverse("app2_url_reverse")path('test_get', views.test_get, name='test_get'),path('test_post', views.test_post, name='test_post'),path('test_response', views.test_response, name='test_response'),path('test_render', views.test_render, name='test_render'),path('test_redirect_views', views.test_redirect_views, name='test_redirect_views'),]
1.3 访问页面
http://127.0.0.1:8000/app2/test_redirect_views
重定向至http://127.0.0.1:8000/app2/test_render

2,通过绝对的或相对的URL,让浏览器跳转到指定的URL进行重定方向
2.1 添加视图函数
myshop/app2/views.py
from django.http import HttpResponse
from django.shortcuts import render
from django.urls import reverse
def index(request):return HttpResponse("app2 的index")# 反向解析
def url_reverse(request):# 使用reverse()方法反向解析print('解析结果:'+ reverse("app2_url_reverse")) # 使用reverse()方法反向解析 ,reverse("app2_url_reverse") 对应urls的 name='app2_url_reverse'return render(request, "2/url_reverse.html")def test_get(request):print(request.get_host()) # 域名加端口print(request.build_absolute_uri()) # 获取完整的请求URI,包括查询字符串print(request.path) # 获取访问路径,不含参数print(request.get_full_path()) # 获取访问路径,不含参数print(request.method) # 获取请求中使用的HTTP方式(POST/GET)print(request.GET) # 获取GET请求的参数print(request.META["HTTP_USER_AGENT"]) # 用户浏览器的user-agent字符串print(request.META["REMOTE_ADDR"]) # 客户端IP地址print(request.GET.get('username')) # 获取get参数return HttpResponse("")# 获取请求中的使用HTTP方式(POST/GET)
def test_post(request):print(request.method)print(request.POST.get('username'))return render(request, '2/test_post.html')def test_response(request):response = HttpResponse()response.write("<h1>hello django</h1>")response.write("<br>")response.write(response.content)response.write("<br>")response.write(response['Content-Type'])response.write("<br>")response.write(response.status_code)response.write("<br>")response.write(response.charset)response.write("<br>")return responsedef test_render(request):return render(request, '2/test_render.html', {'info':'hello django'}, content_type='text/html; charset=utf-8')from django.shortcuts import redirectdef test_redirect_views(request):return redirect('test_render')def test_redirect_url(request):return redirect('http://www.baidu.com')

2.2 添加路由地址
myshop/app2/urls.py
from django.urls import path, re_path
from . import viewsurlpatterns = [path('index', views.index, name='index'),path('url_reverse', views.url_reverse, name='app2_url_reverse'), # 使用reverse()方法反向解析 ,name对于视图的reverse("app2_url_reverse")path('test_get', views.test_get, name='test_get'),path('test_post', views.test_post, name='test_post'),path('test_response', views.test_response, name='test_response'),path('test_render', views.test_render, name='test_render'),path('test_redirect_views', views.test_redirect_views, name='test_redirect_views'),path('test_redirect_url', views.test_redirect_url, name='test_redirect_url'),
]

2.3 访问页面
http://127.0.0.1:8000/app2/test_redirect_url
重定向至百度一下,你就知道 (baidu.com)

相关文章:
Django redirect()函数实现页面重定向
1,通过路由反向解析进行重定向 1.1 添加视图函数 myshop/app2/views.py from django.http import HttpResponse from django.shortcuts import render from django.urls import reverse def index(request):return HttpResponse("app2 的index")# 反向…...
【运维项目经历|029】NTP精准时间同步系统优化项目
🍁博主简介: 🏅云计算领域优质创作者 🏅2022年CSDN新星计划python赛道第一名 🏅2022年CSDN原力计划优质作者 🏅阿里云ACE认证高级工程师 🏅阿里云开发者社区专家博主 💊交流社区:CSDN云计算交流社区欢迎您的加入! 目...
机房网络运维服务项目难点与关键点分析
随着信息技术的飞速发展,机房作为支撑企业信息化建设的核心枢纽,其网络运维服务的重要性日益凸显。然而,在实际运维过程中,运维团队常常面临诸多难点和挑战。本文将围绕机房网络运维服务项目的难点和关键点进行深入分析࿰…...
MKS AX7680 SERIES 电源使用说明手侧
MKS AX7680 SERIES 电源使用说明手侧...
DVWA-XSS(Reflected)
反射型XSS可以用来窃取cookie Low 输入1111进行测试,发现1111被打印 输入<script>alert(document.cookie)</script>,出现弹窗,获得cookie Medium 查看后端代码,发现对<script>进行了转义,但是…...
Python自动化办公2.0 即将发布
第一节课:数据整理与清洗 第二节课:数据筛选、过滤与排序 第三节课:高级数据处理技巧 第四节课:数据可视化与实践案例 第五节课:统计分析与报表 第六节:常见的Excel报表 与下方的课程形成知识体系&…...
【面试宝藏】Redis 常见面试题解析其二
Redis 高级面试题解析 20. 说说 Redis 哈希槽的机制? Redis 集群采用哈希槽(Hash Slot)机制来分布和管理数据。整个哈希空间被划分为 16384 个槽,每个键通过 CRC16 校验后取模映射到一个哈希槽。每个节点负责一部分哈希槽&#…...
智慧公厕厂家+智能厕所小程序,构建数字化公厕新体系
在现代社会的诸多场景中,公厕扮演着重要却常常被忽视的角色。尤其是在传统的楼宇中,公厕存在着一系列痛点问题。 一、传统公厕问题 传统楼宇公厕常常面临着布局不合理的困境,导致使用者寻找困难,浪费时间和精力。卫生状况也是一大…...
使用迁移助手 (SSMA for Oracle) 将Oracle19c数据库迁移到SQL Server2022
如何使用适用于 Oracle 的 SQL Server 迁移助手Microsoft SQL Server Migration Assistant for Oracle (SSMA for Oracle) 将 Oracle 数据库迁移到 SQL Server Microsoft SQL Server Migration Assistant (SSMA) for Oracle is a tool to automate migration from Oracle data…...
LabVIEW开发EOL功能测试系统
LabVIEW开发EOL功能测试系统 介绍了一种基于LabVIEW开发的EOL功能测试系统方案,涵盖软件架构、工作流程、模块化设计、低耦合性、易于修改与维护、稳定性及硬件选型。系统通过高效的CAN通信实现对电机控制器的全面测试,确保运行可靠并支持未来的升级需求…...
Java finally catch try关键字
Java finally catch try关键字 finally: finally 关键字用来创建在 try 代码块后面执行的代码块;无论是否发生异常,finally 代码块中的代码总会被执行。 在 finally 代码块中,可以进行文件流关闭等收尾善后性质的语句 catch&am…...
docker安装mysql8和mysql5.7
1.docker安装mysql5.7,请点击此链接 2.docker安装mysql8并挂载数据卷 docker pull mysql:8.0 docker run --name mysql8 -e MYSQL_ROOT_PASSWORDmy-secret-pw -d mysql:8.0 docker run --name mysql8 -e MYSQL_ROOT_PASSWORD123456 -v /mqq/mysql8/datadir:/var/lib/mysql -d…...
通过一个例子,说明Python的责任链设计模式有什么优缺点
责任链设计模式(Chain of Responsibility Pattern)是一种行为设计模式,它允许将一个请求沿着处理者链进行传递,直到有一个处理者处理它为止。在Python中,这种模式可以通过多种方式实现,通常涉及到一系列对象…...
场地预定小程序基于FastAdmin+UniApp
本文来自:XYvenue场地预定小程序基于FastAdminUniApp - 源码1688 应用介绍 XYvenue是基于FastAdminUniApp开发的多场馆场地预定小程序,提供运动场馆运营解决方案,适用于体育馆、羽毛球馆、兵乒球馆、篮球馆、网球馆等场馆。 前端演示…...
CrossPrefetch: Accelerating I/O Prefetching for Modern Storage——论文泛读
ASPLOS 2024 Paper 论文阅读笔记整理 问题 目前计算设备和存储设备之间的性能差距仍然很大。因此,主内存缓存和缓冲区被广泛用于操作系统、用户级文件系统[32]和I/O运行时,在隐藏性能差距和减少I/O瓶颈方面发挥关键作用[23,26,3…...
详解 Spark Streaming 的 DStream 对象
一、DStream 的创建 1. 通过 RDD 队列 DStream 在内部实现上是一系列连续的 RDD 来表示。每个 RDD 包含有采集周期内的数据 /** 基本语法:StreamingContext.queueStream(queueOfRDDs: Queue, oneAtATime false) */ object DStreamFromRddQueue {def main(args: Ar…...
QT常用控件
目录 1.控件概述 2. QWidget 核⼼属性 设置组件是否可用 获取组件当前位置和尺⼨ QWidget的图标 组件的透明度设置 QWidget光标的设置 字体的设置 组件提示 设置组件获取到焦点的策略 stylesheet样式表 3.常用组件 QPushButton RadioButton Check Box QLabel …...
如何解决chatgpt出现503 bad gateway的问题
昨日,ChatGPT官网挂了,也就是使用web网页端访问的用户,会出现 bad gateway 情况。我们去ChatGPT官方的监控查看,已经展示相关错误。 影响的范围有: 影响了 ChatGPT 所有计划的所有用户。影响包括所有与 ChatGPT 相关…...
Halcon 双相机标定与拼图(二)
一、概述 这种标定有两种模式,有一个标定板和多个标定板两种 一个标定板 两个相机的重叠区域比较大,那么我们可以把标定板放到那个重叠区域来统一坐标系,如下 这种是只需要一个标定板,这种是推荐的方式 。这种是比较简单的&…...
【加密与解密】【04】Java安全架构
JAVA安全模块划分 JCA,Java Cryptography Architecture,Java加密体系结构JCE,Java Cryptography Extension,Java加密扩展包JSSE,Java Secure Sockets Extension,Java安全套接字扩展包JAAS,Java…...
从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...
第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...
WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成
厌倦手动写WordPress文章?AI自动生成,效率提升10倍! 支持多语言、自动配图、定时发布,让内容创作更轻松! AI内容生成 → 不想每天写文章?AI一键生成高质量内容!多语言支持 → 跨境电商必备&am…...
微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...
项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)
Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败,具体原因是客户端发送了密码认证请求,但Redis服务器未设置密码 1.为Redis设置密码(匹配客户端配置) 步骤: 1).修…...
Unity | AmplifyShaderEditor插件基础(第七集:平面波动shader)
目录 一、👋🏻前言 二、😈sinx波动的基本原理 三、😈波动起来 1.sinx节点介绍 2.vertexPosition 3.集成Vector3 a.节点Append b.连起来 4.波动起来 a.波动的原理 b.时间节点 c.sinx的处理 四、🌊波动优化…...
rnn判断string中第一次出现a的下标
# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...
CSS | transition 和 transform的用处和区别
省流总结: transform用于变换/变形,transition是动画控制器 transform 用来对元素进行变形,常见的操作如下,它是立即生效的样式变形属性。 旋转 rotate(角度deg)、平移 translateX(像素px)、缩放 scale(倍数)、倾斜 skewX(角度…...
(一)单例模式
一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...
STM32---外部32.768K晶振(LSE)无法起振问题
晶振是否起振主要就检查两个1、晶振与MCU是否兼容;2、晶振的负载电容是否匹配 目录 一、判断晶振与MCU是否兼容 二、判断负载电容是否匹配 1. 晶振负载电容(CL)与匹配电容(CL1、CL2)的关系 2. 如何选择 CL1 和 CL…...

