vue前端与django后端数据交互
//把数据传到路径为/airCdt/的django后端函数进行数据处理
onSubmit(){
const dict={
'floor': this.formLabelAlign.floor,
'room': this.formLabelAlign.room,
'status': this.formLabelAlign.status,
'mode': this.formLabelAlign.mode,
'temp': this.formLabelAlign.temp,
'level': this.formLabelAlign.level,
};
$.get("/airCdt/", dict, function (ret) {
// console.log(ret);
$("#respond").html(ret);
});
},
//获得数据
$.get("/api/floor2_ajax/", (ret) =>{
var data = JSON.parse(ret);
this.tableData[3]["data"] = Number(data[room-1]["fields"]["temp"]).toFixed(1);
localStorage.setItem("temp_8229",this.tableData[3]["data"]);
var status = data[room-1]["fields"]["status"];
if (status =='0'){
this.tableData[0]["data"] = '关';
}
else if(status =='1'){
this.tableData[0]["data"] = '开';
}
else{this.tableData[0]["data"]='未知';}
localStorage.setItem("status_8229",this.tableData[0]["data"]);
var mode = data[room-1]["fields"]["mode"];
if (mode =='1'){
this.tableData[1]["data"] = '制热';
}
else if(mode =='2'){
this.tableData[1]["data"] = '制冷';
}
else if(mode=='3'){
this.tableData[1]["data"] = '除湿';
}
else{this.tableData[1]["data"] = '未知';}
localStorage.setItem("mode_8229",this.tableData[1]["data"]);
var level = data[room-1]["fields"]["level"];
if (level =='1'){
this.tableData[2]["data"] = '低速';
}
else if(level =='2'){
this.tableData[2]["data"] = '中速';
}
else if(level=='3'){
this.tableData[2]["data"] = '高速';
}
else if(level=='4'){
this.tableData[2]["data"]= '自动';
}
else{this.tableData[2]["data"] = '未知';}
localStorage.setItem("level_8229",this.tableData[2]["data"]);
this.tableData[5]["data"] = data[room-1]["fields"]["co2"];
localStorage.setItem("co2_8229",this.tableData[5]["data"]);
this.tableData[7]["data"] = Number(data[room-1]["fields"]["tvoc"]).toFixed(3);
localStorage.setItem("tvoc_8229",this.tableData[7]["data"]);
this.tableData[4]["data"] = Number(data[room-1]["fields"]["hum"]).toFixed(1);
localStorage.setItem("hum_8229",this.tableData[4]["data"]);
this.tableData[6]["data"] = data[room-1]["fields"]["pm25"];
localStorage.setItem("pm25_8229",this.tableData[6]["data"]);
})
# 发送给前端的每层楼的ajax数据路由
path('api/floor2_ajax/', api.floor2_Data),
path('floor2/', views.floor2),
path('api/floor3_ajax/', api.floor3_Data),
path('floor3/', views.floor3),
path('api/floor4_ajax/', api.floor4_Data),
path('floor4/', views.floor4),
path('api/floor5_ajax/', api.floor5_Data),
path('floor5/', views.floor5),
path('api/floor6_ajax/', api.floor6_Data),
path('floor6/', views.floor6),
path('test/', views.TesT),
# 接收前端数据的路由
path('airCdt/', views.airCdt),
path('freshAir/', views.freshAir), 视图中的view
# 获得前端数据
def airCdt(request): floor = request.GET['floor']
room = request.GET['room']
status = request.GET['status']
mode = request.GET['mode']
temp = request.GET['temp']
level = request.GET['level']
print(floor, room, status, mode, temp, level)
# 进行数据处理
return HttpResponse("空调ok")
vue前端与django后端数据交互的更多相关文章
- 前端与后端数据交互的方式之ajax
前端与后端数据交互的方式之Ajax 对于前端学习而言,CSS+HTML+JavaScript的学习在自我学习的情况下掌握也不是很难,但是想要实现前后端的数据交互在没有指导的情况下学习会是一头雾水.接下 ...
- 对GraphQL-BFF:微服务背景下的前后端数据交互方案的研究-------引用
随着多终端.多平台.多业务形态.多技术选型等各方面的发展,前后端的数据交互,日益复杂. 同一份数据,可能以多种不同的形态和结构,在多种场景下被消费. 在理想情况下,这些复杂性可以全部由后端承担.前端只 ...
- 两种方法实现asp.net方案的前后端数据交互(aspx文件、html+ashx+ajax)
一个HTML页面只能显示HTML代码信息,不能与数据库进行数据的交互.asp.net方案提供了网页与数据库交互的方法,这里举出两种:①aspx文件 ②ashx文件+ajax技术 一.创建数据库 这里以 ...
- vue-resource的使用,前后端数据交互
vue-resource的使用,前后端数据交互 1:导入vue与vue-resource的js js下载: https://pan.baidu.com/s/1fs5QaNwcl2AMEyp_kUg ...
- web前后端数据交互
前后端数据交互是每一名web程序员必须熟悉的过程,前后端的数据交互重点在于前端是如何获取后端返回的数据,毕竟后端一般情况下只需要将数据封装到一个jsonMap,然后return就完了.下面通过一个li ...
- 前后端数据交互处理基于原生JS模板引擎开发
json数据错误处理,把json文件数据复制到----> https://www.bejson.com/ 在线解析json 这样能直观的了解到是否是json数据写错,在控制台打断点,那里错误打那 ...
- Charles——前端必备模拟后端数据
Charles--前端必备模拟后端数据 现在都是前后端分离开发了,前端开发者经常会遇到一个问题如何模拟后端数据来进行开发调试,在这里给大家介绍一个前端神器--Charles. 安装 安装就不赘述了,直 ...
- 前后端数据交互利器--Protobuf
Protobuf 介绍 Protocol Buffers(又名 protobuf)是 Google 的语言中立.平台中立.可扩展的结构化数据序列化机制. https://github.com/prot ...
- 前后端数据交互(八)——请求方法 GET 和 POST 区别
WEB 开发同学一看 get 和 post 请求方法的区别,第一感觉都是 So easy! 学习ajax.fetch.axios时,发送网络请求携带参数时,都需要分别处理get和post的参数.所以我 ...
随机推荐
- 【VS开发】C++线程安全
我们是多么渴望各种C++类都是多线程安全的,然而一旦涉及到对象间的交互,这样的渴望可能就只能是奢望了.下面,我们以设计一个双向链结点为例,看看要使其多线程安全将会带来一些什么问题. class Dou ...
- vue中 Vue.set 的使用
Vue.set(vm.items, indexOfItem, newValue) 1.vm.items :源数据:2.indexOfItem : 要修改的数据的键3.newValue : 要修改的数据 ...
- 论文阅读 | Trojaning Attack on Neural Networks
对神经网络的木马攻击 Q: 1. 模型蒸馏可以做防御吗? 2. 强化学习可以帮助生成木马触发器吗? 3. 怎么挑选建立强连接的units? 本文提出了一种针对神经元网络的木马攻击.模型不直观,不易被人 ...
- Elasticsearch-如何识别一篇文档
ES-识别文档 为了识别同一个索引中的某篇文档,ES使用_uid中的文档类型和ID结合体._uid字段是由_id和_type字段组成,当搜索或者检索文档的时候总是能获得这两项信息. FengZhend ...
- Docker 运行的 应用程序无法连接Oracle数据库的解决办法
1. 最近公司使用docker化部署运行 app 发现一个部门的 多数据源取数的功能连接不上 oracle数据库 报错提示为: 2. 公司平台部同事给出两个解决方案: https://blog.cs ...
- uboot 主Makefile 分析。
本文以uboot_1.1.6 对应的CPU是S3C2440 为例 uboot_1.1.6 根目录下的主Makefile开头: VERSION = PATCHLEVEL = SUBLEVEL = EXT ...
- Docker 添加容器SSH服务
很多时候我们需要登陆到容器内部操作,此时我们就需要开启容器的SSH支持了,下面的小例子将具体介绍三种分配IP地址的方法,分别是pipworl分配,commit分配,Docker分配等. 基于commi ...
- 冒泡排序(java可直接跑,算法思想等小儿科不多说直接上代码)
import java.util.Arrays; /** *冒泡排序:时间复杂度O(N^2),空间复杂度O(1),稳定的排序 * 每趟确定一个元素的位置,所以需要arr.length趟排序, */pu ...
- 13 Python之第一类对象闭包和迭代器
def fn(): print("我叫fn") fn() print(fn)## <function fn at 0x0000000001D12E18> f ...
- vue组件之属性Props
组件的属性和事件 父子组件之间的通信 父子组件之间的通信就是 props down,events up,父组件通过 属性props向下传递数据给子组件,子组件通过 事件events 给父组件发送消息. ...